github源码指引:C++嵌入式WEB服务器

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。


相关专题: C++嵌入式HTTP服务器_初级代码游戏的博客-CSDN博客

基础:github源码指引:源码结构、编译、运行_github编译-CSDN博客

目录

一、基本信息

二、执行输出

三、浏览器访问


一、基本信息

源码目录:httpd

编译输出:myhttpd.exe

执行命令即可运行,端口10000,写在代码里面的(myhttpd_t.cpp,第12行)。

二、执行输出

复制代码
[08-22 17:22:02][应用][信息][myhttpd_t.cpp           : 106(main)][  0.00]程序版本:2024.03.07 08:41
[08-22 17:22:02][应用][信息][myhttpd.cpp             :  10(ShowHttpdVersion)][  0.00]

pid=5106 SIGCHLD    子进程Terminate或Stop
[08-22 17:22:02][应用][信息][myUserManager.h         :  44(InitUserManager)][  0.00]管理员 admin/iloveyou
[08-22 17:22:02][应用][信息][myUserManager.h         :  45(InitUserManager)][  0.00]用户 user/user
[08-22 17:22:02][应用][信息][myUserManager.h         :  46(InitUserManager)][  0.00]APP客户 appuser/apppass
[08-22 17:22:02][应用][信息][myhttpclient.h          : 280(Connect)][  0.00]Connect to 127.0.0.1 10001 ......
[08-22 17:22:02][应用][出错][myhttpclient.h          : 302(Connect)][  0.00]Connect to 127.0.0.1 10001 error
[08-22 17:22:02][应用][信息][myhttpd_t.cpp           :  84(start_httpd)][  0.00]start server ...
[08-22 17:22:02][应用][信息][myhttpd.h               :  41(run)][  0.00]站点标识 ct嵌入式WEB服务器
[08-22 17:22:02][应用][信息][myhttpd.h               :  55(run)][  0.00]页面:PN9ns_my_std11CWebCommandE /bin/CWebCommand 安装成功!
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]/admin/Pause 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]/admin/SetDebug 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]/admin/SetMax 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]/admin/ShowDir 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]/bin/CWebCommand 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]DownFile 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]ViewFile 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]shell 初始化成功
[08-22 17:22:02][**HTTPD**][信息][myhttpserver.h          : 731(_InitAllCommands)][  0.00]ssh 初始化成功
[08-22 17:22:02][**HTTPD**][信息][mysocketserver.h        : 688(_Start_Listen)][  0.00]管理服务启动 端口号 10001
[08-22 17:22:02][**HTTPD**][信息][mysocketserver.h        : 692(_Start_Listen)][  0.00]WWW服务启动 端口号 10000
[08-22 17:22:07][应用][信息][myhttpclient.h          : 280(Connect)][  0.00]Connect to 127.0.0.1 10001 ......
[08-22 17:22:07][应用][信息][myhttpd_t.cpp           :  73(start_httpd)][  0.01]端口成功连接,服务已启动 10000

看到这个既启动成功,可以关闭控制台。

三、浏览器访问

在浏览器地址栏输入"http://IP:10000"即可打开网站:

帅吧?

用户名密码在myUserManager.h的InitUserManager函数里:

cpp 复制代码
		bool InitUserManager()
		{
			CUserManager* pUM = CUserManager::getInstPtr();
			pUM->admin_name = "admin";
			pUM->admin_password = "iloveyou";
			pUM->user_name = "user";
			pUM->user_password = "user";
			pUM->appuser_name = "appuser";
			pUM->appuser_password = "apppass";

			thelog << "管理员 " << pUM->admin_name << "/" << pUM->admin_password << endi;
			thelog << "用户 " << pUM->user_name << "/" << pUM->user_password << endi;
			thelog << "APP客户 " << pUM->appuser_name << "/" << pUM->appuser_password << endi;

			return true;
		}

哦,启动时的日志也输出了用户名密码信息(这是违反安全规定的)。

用admin/iloveyou进去看看:

搞得有点乱啊,其实右边的内容是有独立入口的,在地址栏直接输入"default.asp",

看着清爽一点。这部分完全是C++代码实现的,之前那个框架则是html实现的。表格用了一个css文件,也可以去掉,C++代码里面的样式是经过设计的,css是我瞎写的。

具体功能可以结合代码去理解。


(这里是文档结束)

相关推荐
七七七七071 小时前
【Linux 系统】打开文件和文件系统
linux·运维·spring
DeeplyMind1 小时前
第二章:模块的编译与运行-7 Loading and Unloading Modules
linux·驱动开发
敢敢J的憨憨L1 小时前
GPTL(General Purpose Timing Library)使用教程
java·服务器·前端·c++·轻量级计时工具库
---学无止境---1 小时前
Linux中驱动程序通过fasync异步通知应用程序的实现
linux
cccyi72 小时前
Linux 进程间通信机制详解
linux·进程通信
北京迅为2 小时前
【北京迅为】iTOP-4412精英版使用手册-第三十五章 WEB控制LED
linux·嵌入式硬件·嵌入式·4412
让我们一起加油好吗2 小时前
【C++】封装红黑树模拟实现 set 和 map
linux·c++·set·map·红黑树
暴富奥利奥2 小时前
完成docker方式的ros环境配置
linux·学习·docker·容器
秃头菜狗2 小时前
十四、运行经典案例 wordcount
大数据·linux·hadoop
Bug退退退1233 小时前
Java 网络流式编程
java·服务器·spring·sse