Bootstrap

(一)TinyWebServer的环境配置与运行

Linux下C++轻量级Web服务器,项目来源于:TinyWebServer

配置环境(为下载代码,编译运行做准备)

1. 安装VMware

VMware官网

选择产品,点击Workstation Pro

下载试用版(注:需要在官网注册自己的账号)

下载完成后,双击exe文件

点击下一步

同意协议后,继续点击下一步

更改安装路径,再点击 ”下一步“

点击 ”下一步“

点击 ”下一步

点击“安装”

点击“完成”

之后,VMware安装成功,从桌面中双击打开它。

在 "我有VMware Workstation 17 的许可证密码(H)" 下单方框里面填写 ”JU090-6039P-08409-8J0QH-2YR7F“ ,再点击 ”继续“ 。

点击“完成”

之后可以正常使用WMware

2. 下载Ubuntu安装镜像

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中的浏览器,输入网址后访问

此时,成功运行项目。

;