0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

云服务器 Flexus X 实例:轻量级 http 服务器 Tinyhttpd 部署

jf_21561199 来源:jf_21561199 作者:jf_21561199 2025-01-07 16:59 次阅读

Flexus 云服务器 X 实例是华为云推出的一款高性能、高可靠性的云服务器产品,它专为满足企业级用户对计算资源的严格要求而设计。本篇文章通过部署轻量级 http 服务器Tinyhttpd来体验Flexus 云服务器 X 实例。

wKgZPGd87PSAZyNAAACs8OHiswI529.png

一、云服务器 Flexus

首先,进入官网购买Flexus 云服务器 X 实例,点击这里购买,点击购买界面如下所示。

wKgZO2d87PSADu0VAAC1-cXkkD4555.png

其中,CPU 和内存可以自定义,如上图所示。

(1)可以开启性能模式,能够支付额外算力费用,享受极致稳定性能 SLA 保障;

(2)镜像中有多种镜像可以选择,每种镜像有不同的版本可供选择;

(3)带宽可以根据自己的需要选择,同时支持直接输入。

完成配置后,点击下一步:确认配置,如下所示。

wKgZPGd87PWAPrjBAACycqpRqNc344.png

选择协议许可后点击购买即可。

二、Tinyhttpd 介绍

Tinyhttpd 是一个简易的 http 服务器,支持 CGI。代码量少,非常容易阅读,十分适合网络编程初学者学习的项目。麻雀虽小,五脏俱全。在 Tinyhttpd 中可以学到 linux 上进程的创建,管道的使用。linux 下 socket 编程基本方法和 http 协议的最基本结构。

Github 仓库如下所示,点这里进入~

wKgZO2d87PWAY6TbAADzfUWN3kw945.png

如上所示,tinyhttpd 项目核心代码在 httpd.c 中。

三、部署 Tinyhttpd

华为云服务器自带 Git,不用自己下载。

root@flexusx-c1f3:~# git clone https://github.com/cbsheng/tinyhttpd.git

Cloning into 'tinyhttpd'...

remote: Enumerating objects: 76, done.

remote: Total 76 (delta 0), reused 0 (delta 0), pack-reused 76 (from 1)

Unpacking objects: 100% (76/76), 21.13 KiB | 92.00 KiB/s, done.

root@flexusx-c1f3:~# ls

tinyhttpd

root@flexusx-c1f3:~#

安装软件包 tree,用于查看目录结构,如下所示。

root@flexusx-c1f3:~/tinyhttpd# apt install tree

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following NEW packages will be installed:

tree

0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.

Need to get 43.0 kB of archives.

After this operation, 115 kB of additional disk space will be used.

Get:1 http://repo.huaweicloud.com/ubuntu focal/universe amd64 tree amd64 1.8.0-1 [43.0 kB]

Fetched 43.0 kB in 0s (1,003 kB/s)

Selecting previously unselected package tree.

(Reading database ... 116710 files and directories currently installed.)

Preparing to unpack .../tree_1.8.0-1_amd64.deb ...

Unpacking tree (1.8.0-1) ...

Setting up tree (1.8.0-1) ...

Processing triggers for man-db (2.9.1-1) ...

root@flexusx-c1f3:~/tinyhttpd#

下面通过 tree 查看 tinyhttpd 项目的目录层级。

root@flexusx-c1f3:~/tinyhttpd# tree .

.

├── example

│ ├── echoclient.cpp

│ ├── echoserver.cpp

│ ├── README.md

│ ├── UDPclient.cpp

│ └── UDPserver.cpp

├── htdocs

│ ├── check.cgi

│ ├── color.cgi

│ ├── index.html

│ └── README

├── httpd.c

├── Makefile

├── README

└── simpleclient.c

2 directories, 13 files

root@flexusx-c1f3:~/tinyhttpd#

如上所示,tinyhttpd 项目是一个非常精致的项目,虽然功能不多,但是该有的功能都有。

四、运行

4.1 编译项目

进入 tinyhttpd 目录,执行 make 命令编译项目代码,如下所示。

root@flexusx-c1f3:~/tinyhttpd# make

gcc -W -Wall -lpthread -o httpd httpd.c

httpd.c: In function ‘startup’:

httpd.c:533:52: warning: pointer targets in passing argument 3 of ‘getsockname’ differ in signedness [-Wpointer-sign]

if (getsockname(httpd, (struct sockaddr *)&name, &namelen) == -1) int *

In file included from httpd.c:23:

/usr/include/x86_64-linux-gnu/sys/socket.h:117:26: note: expected ‘socklen_t * restrict’ {aka ‘unsigned int * restrict’} but argument is of type ‘int *’

socklen_t *__restrict __len) __THROW;

httpd.c: In function ‘main’:

httpd.c:591:24: warning: pointer targets in passing argument 3 of ‘accept’ differ in signedness [-Wpointer-sign] &client_name_len); int *

In file included from httpd.c:23:

/usr/include/x86_64-linux-gnu/sys/socket.h:233:28: note: expected ‘socklen_t * restrict’ {aka ‘unsigned int * restrict’} but argument is of type ‘int *’

socklen_t *__restrict __addr_len);

编译完成,当前目录下存在可执行文件 httpd,如下所示。

root@flexusx-c1f3:~/tinyhttpd# ls

example htdocs httpd httpd.c Makefile README simpleclient.c

root@flexusx-c1f3:~/tinyhttpd#

4.2 运行项目

直接执行 httpd,如下所示。

root@flexusx-c1f3:~/tinyhttpd# ./httpd

httpd running on port 50547

这里需要将 50547 端口加入到安全规则中,如下所示。

wKgZPGd87PWAKQMiAAByyfO016Q214.png

然后,访问http://服务器 IP 地址:50547即可,如下所示。

wKgZO2d87PaARQcMAABJHovevoU501.png

五、总结

Flexus 云服务器 X 实例是一个强大、灵活且经济高效的云服务解决方案。华为云的 Flexus 云服务器 X 实例以其卓越的性能、高度的灵活性和显著的成本效益,为企业提供了一个全面而高效的云计算解决方案。部署轻量级 Web 服务器 Tinyhttpd 至 Flexus 云服务器 X 实例 的过程异常便捷,这得益于华为云提供的直观管理界面和工具。用户可以轻松地通过几个简单的步骤完成部署,无需深入的系统配置知识。此外,更新软件源的速度也得到了显著提升,这不仅确保了服务器能够快速获取最新软件更新,也提高了整体的系统稳定性和安全性。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云服务器
    +关注

    关注

    0

    文章

    767

    浏览量

    13507
  • 华为云
    +关注

    关注

    3

    文章

    2744

    浏览量

    17791
收藏 人收藏

    相关推荐

    华为 Flexus X 实例服务器部署即时通讯 IM 项目

    @TOC   写在前面 手里拿到了一台 华为 Flexus X 实例服务器
    的头像 发表于 02-07 10:15 172次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b><b class='flag-5'>云</b><b class='flag-5'>服务器</b><b class='flag-5'>部署</b>即时通讯 IM 项目

    服务器 Flexus X 实例:one-api 部署,支持众多大模型

    本文通过 Flexus 服务器 X 实例 部署 one-api。
    的头像 发表于 02-06 17:35 271次阅读
    <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>:one-api <b class='flag-5'>部署</b>,支持众多大模型

    Flexus 服务器 X 实例实践:部署思源笔记工具

    服务器,它为各种应用的部署提供了坚实的基础,就如我们即将探讨的思源笔记工具的部署一样。 一、Flexus
    的头像 发表于 02-06 15:37 231次阅读
    <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>实践:<b class='flag-5'>部署</b>思源笔记工具

    华为 Flexus 服务器 X 实例部署 Mininote 轻量级笔记工具

    @TOC   一、Flexus 服务器 X 实例介绍 1.1 Flexus
    的头像 发表于 01-23 17:56 205次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b><b class='flag-5'>部署</b> Mininote <b class='flag-5'>轻量级</b>笔记工具

    Flexus 服务器 X 实例实践:部署 Alist 文件列表程序

    引言 在当今数字化时代,华为以其卓越的技术实力和可靠的服务品质成为众多企业和开发者的首选。华为 Flexus
    的头像 发表于 01-14 09:31 691次阅读
    <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>实践:<b class='flag-5'>部署</b> Alist 文件列表程序

    Flexus 服务器 X 实例实践:安装 Dashdot 开源服务器仪表板

    引言 在当今计算的浪潮下,华为凭借其卓越的技术实力,成为众多企业和开发者的信赖之选。华为 Flexus
    的头像 发表于 01-13 15:51 423次阅读
    <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>实践:安装 Dashdot 开源<b class='flag-5'>服务器</b>仪表板

    Flexus 服务器 X 实例实践:安装 Ward 服务器监控工具

    引言 在当今数字化快速发展的时代,企业和开发者对于计算资源的需求日益增长。华为凭借其卓越的技术实力脱颖而出,Flexus 服务器
    的头像 发表于 01-13 15:51 217次阅读
    <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>实践:安装 Ward <b class='flag-5'>服务器</b>监控工具

    基于华为 Flexus 服务器 X 实例快速搭建 Halo 博客平台

    如何基于华为 Flexus 服务器 X 实例快速搭建 Halo 博客平台,帮助大家掌握从选购
    的头像 发表于 01-08 11:46 289次阅读
    基于华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>快速搭建 Halo 博客平台

    华为 Flexus 服务器 X 实例之 openEuler 系统下部署 dufs 文件服务器

    一、Flexus 服务器 X 实例介绍 1.1 Flexus
    的头像 发表于 01-08 11:45 325次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>之 openEuler 系统下<b class='flag-5'>部署</b> dufs 文件<b class='flag-5'>服务器</b>

    华为 Flexus 服务器 X 实例之 openEuler 系统下部署 emlog 轻量级博客平台

    前言 随着计算技术的不断进步,华为 Flexus 服务器 X
    的头像 发表于 01-03 09:20 323次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>之 openEuler 系统下<b class='flag-5'>部署</b> emlog <b class='flag-5'>轻量级</b>博客平台

    华为 Flexus 服务器 X 实例部署 Trilium Notes 知识库工具

    一、Flexus 服务器 X 实例介绍 1.1 Flexus
    的头像 发表于 01-02 20:45 322次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b><b class='flag-5'>部署</b> Trilium Notes 知识库工具

    华为 Flexus 服务器 X 实例部署 Note Mark 笔记工具

    前言 华为 Flexus 服务器 X 实例作为专为中小企业和开发者设计的新一代柔性算力
    的头像 发表于 01-02 13:42 174次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b><b class='flag-5'>部署</b> Note Mark 笔记工具

    华为 Flexus 服务器 X 实例的使用教程

    引言 选择一款性价比高、性能强劲的服务器是 IT 技术人员常面临的问题。华为Flexus 服务
    的头像 发表于 12-30 09:16 401次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>的使用教程

    采用 Flexus 服务器 X 实例搭建 RTSP 直播服务器

    监控、直播和多媒体应用的核心组件。在当今高度互联的世界中,能够快速部署且稳定运行的 RTSP 服务器对于确保高质量的视频流体验至关重要。本文将指导如何在华为 Flexus 
    的头像 发表于 12-24 17:36 350次阅读
    采用 <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>搭建 RTSP 直播<b class='flag-5'>服务器</b>

    华为 Flexus 服务器 X 实例的购买及使用体验

    价比服务。其中,华为 Flexus 服务器 X
    的头像 发表于 12-24 17:26 326次阅读
    华为<b class='flag-5'>云</b> <b class='flag-5'>Flexus</b> <b class='flag-5'>云</b><b class='flag-5'>服务器</b> <b class='flag-5'>X</b> <b class='flag-5'>实例</b>的购买及使用体验