Linux下C++轻量级Web服务器,项目来源于:TinyWebServer
配置环境(为下载代码,编译运行做准备)
1. 安装VMware
选择产品,点击Workstation Pro
下载试用版(注:需要在官网注册自己的账号)
下载完成后,双击exe文件
点击下一步
同意协议后,继续点击下一步
更改安装路径,再点击 ”下一步“
点击 ”下一步“
点击 ”下一步
点击“安装”
点击“完成”
之后,VMware安装成功,从桌面中双击打开它。
在 "我有VMware Workstation 17 的许可证密码(H)" 下单方框里面填写 ”JU090-6039P-08409-8J0QH-2YR7F“ ,再点击 ”继续“ 。
点击“完成”
之后可以正常使用WMware
2. 下载Ubuntu安装镜像
点击Download
点击Get Ubuntu Desktop
往下划,下载22.04.3
下载后如图所示
3.安装Ubuntu系统
VMware中点击创建新的虚拟机
选择自定义,点击下一步
点击下一步
导入Ubuntu,点击下一步
填一下
点击下一步
点击下一步
点击下一步
点击下一步
点击下一步
点击下一步
点击下一步
点击下一步
点击下一步
点击完成
进入VMware,选择开启此虚拟机
:
根据需要选择是否将语言设置为中文简体,我这里就直接选择English
,然后Install Ubuntu(安装Ubuntu):
Kyeboard Layout(键盘布局)默认即可:
Updates and other Software(更新和其它软件)这里,建议把Download updates while installing ubuntu(安装时下载更新) 去掉,把Install third-party software for graphics and wi-Fi hardware and additional media formats(为图形和 Wi-Fi 硬件以及其他媒体格式安装第三方软件)选择上,这里也不会下载很多内容,但是可以在今后的使用年过程中避免浏览器打不开视频、图片等问题。
因为是安装的的虚拟机,这里直接选择Erase disk and install Ubuntu(擦除磁盘并安装ubuntu)
即可
选择中国即可
设置计算机名,密码等
安装完成后点击重启即可:
进入系统
4.安装配置mysql
在终端打开
安装数据库
在终端输入以下内容
# 安装mysql
sudo apt upgrade && sudo apt install mysql-server mysql-client libmysqlclient-dev
# 进入mysql
sudo mysql -u root
# 创建用户——这里根据自己所需配置
create user 'starry'@'%' identified by 'root';
# 给新用户符全部权限
grant all on *.* to 'starry'@'%';
# 退出mysql
exit
# 设置mysql远程连接
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 改成
bind-address = 0.0.0.0
# 重启mysql服务
sudo service mysql restart
表的创建
# 进入mysql
sudo mysql -u root
# 创建数据库yourdb
create database yourdb;
# 使用数据库yourdb
use yourdb;
# 创建user表
CREATE TABLE user(
username char(50) NULL,
passwd char(50) NULL
)ENGINE=InnoDB;
# 添加数据
INSERT INTO user(username, passwd) VALUES('name', 'passwd');
检查mysql状态
systemctl status mysql.service
可以利用以下命令查看表和表的内容:
show databases; //可以查看当前的数据库
show users;
select *from user;
需要先进入mysql环境,再使用以上命令
进入mysql:
sudo mysql -uroot -p
5.下载代码,编译运行
下载到本地
点击复制链接
使用git 克隆到本地
# 没有git的使用下面命令(有git忽略此步骤)
sudo apt install git -y
# 执行下面的命令吧项目克隆到本地
git clone https://github.com/qinguoyi/TinyWebServer.git
此时,桌面出现TinyWebServer文件夹
进入项目,修改main.cpp文件配置,执行make
cd TinyWebServer
vi main.cpp
make
首先需要确认main.cpp里的数据库和你mysql数据库配置相同。
查看数据库名称和密码
cd /etc/mysql
sudo vim debian.cnf
然后打开main.cpp修改对应配置(直接在TinyWebServer文件夹点击main.cpp修改即可)
编译Tinywebserver(编译运行)
cd Tinywebserver
sh ./build.sh
编译时遇到的错误:fatal error: mysql.h: No such file or directory
解决方法:安装链接库 apt-get install libmysqlclient-dev
编译时遇到的错误:g++编译时:No such file or directory
解决办法:安装g++
sudo apt-get install g++
运行可执行文件,访问项目
# 运行
./server
# 打开浏览器,访问
http://127.0.0.1:9006/
打开VMware中的浏览器,输入网址后访问
此时,成功运行项目。