# 前言
相比大家已经看过我之前写的 [嵌入式web服务器BOA+CGI+HTML+MySQL项目实战——Linux](https://blog.csdn.net/Ikaros_521/article/details/102801453),因为当时也是刚接触,所以其实里面写的比较乱,现在打算直接上一个清爽点的小系统,以方便学习参考。(*当然,这个小系统还有很多设计不合理,不安全的地方,所以大家就当个学习例程就好*)
**操作系统**:CentOS7 (ubuntu的话 需要自行适配一下)
**使用的技术和工具等**:
- C
- HTML/CSS/JavaScript
- Ajax
- sqlite3
- CGI
- jQuery
- bootstrap
- echarts.js
## 工程下载
[码云](https://gitee.com/ikaros-521/boa_cgi_SMS) [github](https://github.com/Ikaros-521/boa_cgi_SMS)
## 目录说明
**cgi-bin** 存放 `.c .h`和编译好的 `.cgi`文件
**cloud** 云端资源功能,存储云文件的文件夹
**css** 存放 `.css`文件
**file** 存放 用户账号信息文件,数据库文件等
**img** 存放图片素材
**js** 存放 `.js`文件
**log** 存放系统生成的 日志信息
**session** 存放用户登录生成的session_id
**html**文件置于根目录
![在这里插入图片描述](https://img-blog.csdnimg.cn/46c76079eec54565a5bab17365484e10.png)
## 功能说明
应用资源管理系统 当时设计的主要功能对云服务器的应用资源(mysql、apache、gateone等)进行管理(开/关/重启);还能上传下载文件,当个简易云盘;当然基本的系统状态查看得有;然后就是基础的登录登出;日志管理;用户管理的功能。
**默认用户名:admin 默认密码:123456**
# 效果参考
## 登录页
![在这里插入图片描述](https://img-blog.csdnimg.cn/077fe9f5c06a44edb901917c9cc6c27e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_20,color_FFFFFF,t_70,g_se,x_16)
## 功能页-系统状态
![在这里插入图片描述](https://img-blog.csdnimg.cn/7697757bdd1f43f3a43dc82aad73c76c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_20,color_FFFFFF,t_70,g_se,x_16)
## 整体概览
![在这里插入图片描述](https://img-blog.csdnimg.cn/5d83a4bcb548459bbe29a3029293bc53.gif#pic_center)
# 系统分析
## 系统概述
![在这里插入图片描述](https://img-blog.csdnimg.cn/785fde37c9b44f85a08e81eb53ea4d72.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_18,color_FFFFFF,t_70,g_se,x_16)
## 系统功能需求
![在这里插入图片描述](https://img-blog.csdnimg.cn/9cd8d7c09a654e199434aad4a29bf101.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
# 系统设计
## 系统功能模块设计
![在这里插入图片描述](https://img-blog.csdnimg.cn/52cec9ea8daf491dbf5f94551d560d8c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_13,color_FFFFFF,t_70,g_se,x_16)
## 系统数据存储设计
### 数据文件的结构设计
![在这里插入图片描述](https://img-blog.csdnimg.cn/f9b9547594f24572aa55f5aef032723f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
# 系统实现
## 1、登录帐号的设计与实现
登录页面不填写会进行相应的前端提示,成功填写但密码或账号错误会提示相应错误信息。系统默认的初始用户名为admin,密码为123456。登录界面的效果如图5.2所示。登录流程如图5.3所示。
![在这里插入图片描述](https://img-blog.csdnimg.cn/b5c0e9060d9e4f21a16aa5527e4e151e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/6678f8d9f05f4ffe97ced9c74723f9a0.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_8,color_FFFFFF,t_70,g_se,x_16)
## 2、系统状态的设计与实现
系统状态页面包含云服务器的基础信息以及CPU、内存、硬盘的占用情况。效果图如图5.4所示。
![在这里插入图片描述](https://img-blog.csdnimg.cn/dc31f5a24a64446586e4436ed3dd848e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
## 3、应用管理的设计与实现
应用管理页面包含云服务器的应用,分别为MySQL、Apache等。对这些应用程序的开启/关闭/重启、运行状态、设置或关闭开机自启。此模块用户后期还可以DIY拓展,相应功能的基本代码流程大致类似、拓展十分方便。
![在这里插入图片描述](https://img-blog.csdnimg.cn/25d3ad51522f43e396512062357c90dd.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
## 4、云端资源的设计与实现
云端资源页面进入后就会自动获取指定目录下的文件资源,并以表格的形式展示在页面上,页面提供了下载和删除的功能,另外还可以上传文件和搜索文件,可以算是比较齐全的资源管理模块了。效果图如图5.8所示。
![在这里插入图片描述](https://img-blog.csdnimg.cn/b41d31fc36014844a7bcd7979fbffd90.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
这里的文件管理涉及到了Linux命令以及标准C语言的文件操作,文件名以json串的格式发回前端,JavaScript对json串进行相应的解析,为表格增加新的行。以下主要展示后端CGI程序的实现代码。
## 5、系统日志的设计与实现
系统日志页面进入就可以获取所有的系统日志(如登录操作、登出操作、关闭开启重启相关的软件、上传了什么文件、删除了什么文件、修改账号和密码等),可以通过日历控件来检索对应时间的日志,方便相关问题的排查和记录、还能监控是否有不明人员进行了操作。可以在前面的代码中发现,相应的操作过后会对操作的类型、操作执行的时间还有相应的操作描述进行日志记录,这就是日志数据的来源。效果图如图5.9所示。
![在这里插入图片描述](https://img-blog.csdnimg.cn/d72d5984d74340eba853237036a2e843.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
这里的日志查询涉及了Linux命令以及标准C语言的文件操作相关知识、当然还有必不可少的CGI,对应字段以json串的格式发回前端,JavaScript对收到的json串进行相应的解析,为前端的表格增加新的行。
## 6、用户管理的设计与实现
用户管理页面进入可以看到修改用户名和修改密码两块内容,相互独立操作。修改用户名模块可以回显当前用户名信息,设计十分人性。取消按钮可以清空输入方便错误修改,效果图如图5.10所示。
![在这里插入图片描述](https://img-blog.csdnimg.cn/0033ec3aa0954c16a49958a0f0ab583c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATG92ZeS4tuS8iuWNoea0m-aWrw==,size_16,color_FFFFFF,t_70,g_se,x_16)
用户信息修改同样也是文件操作,解析前端传来的数据,对数据进行校验后,将修改好的数据写入文件,实现信息的修改。
## 7、退出系统的设计与实现
在之前的图中可以发现,这一版本系统的“退出系统”设置在右上角。实现session的清除和页面的跳转。
![在这里插入图片描述](https://img-blog.csdnimg.cn/e19946ae829f4b7caca13d13b18be1b0.png?x-os
没有合适的资源?快使用搜索试试~ 我知道了~
Linux下 基于Boa的应用资源管理系统 SMS.zip
共216个文件
c:38个
cgi:35个
js:31个
需积分: 5 0 下载量 131 浏览量
2024-04-29
16:14:21
上传
评论
收藏 2.46MB ZIP 举报
温馨提示
Linux下 基于Boa的应用资源管理系统 SMS.zip
资源推荐
资源详情
资源评论
收起资源包目录
Linux下 基于Boa的应用资源管理系统 SMS.zip (216个子文件)
user.bin 31B
cgic.c 56KB
config_shadowsocks.c 7KB
login.c 5KB
get_query_log.c 5KB
change_password.c 4KB
test.c 4KB
del_cloud_file.c 4KB
upload.c 4KB
get_tcp_ip.c 3KB
get_total_tr.c 3KB
get_log.c 3KB
change_username.c 3KB
base64.c 3KB
logout.c 2KB
del_log_file.c 2KB
set_squid.c 2KB
set_apache.c 2KB
get_states.c 2KB
set_gateone.c 2KB
set_mysql.c 2KB
check_session.c 2KB
set_frp.c 2KB
get_wan_ip.c 1KB
get_cloud_file.c 1KB
get_log_file.c 1KB
get_private_ip.c 1KB
set_deny_ping.c 980B
get_username.c 890B
get_gateone_state.c 834B
get_squid_state.c 832B
get_apache_state.c 832B
get_mysql_state.c 829B
get_frp_state.c 814B
get_remote_addr.c 792B
ajax3.c 452B
ajax2.c 449B
ajax1.c 426B
user_init.c 333B
test.cgi 42KB
login.cgi 42KB
get_log.cgi 42KB
config_shadowsocks.cgi 42KB
del_cloud_file.cgi 42KB
upload.cgi 42KB
change_password.cgi 42KB
change_username.cgi 42KB
get_query_log.cgi 42KB
get_tcp_ip.cgi 42KB
get_total_tr.cgi 38KB
get_cloud_file.cgi 38KB
get_log_file.cgi 38KB
get_states.cgi 38KB
get_wan_ip.cgi 38KB
get_private_ip.cgi 38KB
get_mysql_state.cgi 38KB
get_apache_state.cgi 38KB
get_squid_state.cgi 38KB
get_gateone_state.cgi 38KB
get_frp_state.cgi 38KB
check_session.cgi 38KB
del_log_file.cgi 38KB
logout.cgi 38KB
set_gateone.cgi 38KB
set_apache.cgi 38KB
set_deny_ping.cgi 38KB
set_mysql.cgi 38KB
set_squid.cgi 38KB
set_frp.cgi 38KB
get_username.cgi 38KB
ajax2.cgi 38KB
ajax3.cgi 38KB
get_remote_addr.cgi 38KB
ajax1.cgi 8KB
boa.conf 7KB
bootstrap.min.css 152KB
jquery-ui.min.css 29KB
datepicker.css 14KB
style.css 2KB
style.css 2KB
reset.css 1KB
style.css 1KB
style.css 1KB
reset.min.css 773B
main.css 770B
style.css 734B
style.css 653B
style.css 573B
style.css 359B
style.css 268B
style.css 268B
style.css 268B
style.css 268B
style.css 268B
style.css 268B
style.css 235B
sms.db 2KB
boa-0.94.13.tar.gz 119KB
cgic207.tar.gz 50KB
cgic.h 7KB
共 216 条
- 1
- 2
- 3
资源评论
JJJ69
- 粉丝: 6232
- 资源: 5778
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 计算机视觉(CV)open CV 人脸识别程序.docx
- python 端午节游戏,选择三个传统的端午节活动之一:包粽子、赛龙舟或挂艾草 根据玩家的选择,游戏会描述相应的情节,并在完成后
- C语言各版块实验题库、实验汇报以及实验教学案例资源
- 数据库连接(MySQL与VS2022)_vs2022 mysql-CSDN博客 (2024_6_1 19_11_34).html
- Flappy bird小游戏
- 数电实验五:555单稳态触发电路、555单稳态触发电路、555构成的施密特触发器
- MySQLTuner,一个用Perl编写的脚本,它允许你快速审查MySQL安装情况,并进行调整以提高性能和稳定性
- 冒泡排序 基础排序 插入排序 快速排序 双路快速排序 三路快速排序 堆排序.zip
- 数电实验四:加法计数器、减法计数器、加法器、建议数字钟、74LS192功能测试
- JSP基于网络超市商品销售管理系统的设计与实现(源代码+lw).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功