二、环境配置,项目运行 —— TinyWebServer

news2024/11/25 5:00:19

环境配置,项目运行 —— TinyWebServer

一、前言

上一期已经介绍过这个项目的基本结构,不懂得可以点开主页查找。
写代码前。一般的步骤就是,先把别人的代码下载下来运行。一、一方面看看最终效果是否是自己想要的,二、掌握项目的大致概要。
TinyWebServer —— GitHub

二、环境配置

  • Linux(作者用的是Ubuntu 22.04 LST)
  • 数据库(作者用的Mysql)
  • 创建基本表

Ⅰ、Linux

这里就不带大家安装了,一方面网上教程很多。二来估计都写项目了,也应该都会玩Linux了。

Ⅱ、数据库

1、数据库安装

# 安装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

1、表的创建

# 进入mysql
sudo mysql -u root
# 创建数据库qgydb
create database qgydb;
# 使用数据库qgydb
use qgydb;
# 创建user表
USE yourdb;
CREATE TABLE user(
    username char(50) NULL,
    passwd char(50) NULL
)ENGINE=InnoDB;

# 添加数据
INSERT INTO user(username, passwd) VALUES('name', 'passwd');

三、下载代码,编译运行

Ⅰ、下载到本地

1、点击这里复制下载连接

在这里插入图片描述

2、使用git 克隆的本地
# 没有git的使用下面命令(有git忽略此步骤)
sudo apt install git -y
# 执行下面的命令吧项目克隆到本地
git clone https://github.com/qinguoyi/TinyWebServer.git

3、进入项目,修改main.cpp文件配置,执行make

 cd TinyWebServer
 vi main.cpp
 make

在这里插入图片描述

4、运行可执行文件,访问项目

# 运行
./server  
# 打开浏览器,访问
http://127.0.0.1:9006/

在这里插入图片描述

三、下期预告

解析lock的编写与解析

四、最后

求赞!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/994816.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

redis分布式锁详解

一、基本分布式锁实现 1、案例(扣减库存) RequestMapping("reduceStock")public String reduceStock() {String lockKey "lock:product_101";String clientId UUID.randomUUID().toString();// 过期时间要和设置key成为一条命令…

linux下shell脚本实现wordpress搭建

wordpress_auto_install.sh #!/bin/bashuser$(whoami)function wordpress_auto_install () { if [ $user "root" ];thenecho "前提:调整系统配置,如关闭selinux、firewall等!"sed -i s/SELINUXenforcing/SELINUXdis…

光线投射之伪3d

光线投射是一种在 2D 地图中创建 3D 透视的渲染技术。当计算机速度较慢时,不可能实时运行真正的 3D 引擎,光线投射是第一个解决方案。光线投射可以非常快,因为只需对屏幕的每条垂直线进行计算。 光线投射的基本思想如下:地图是一…

rtthread下基于spi device架构MCP25625驱动

1.CAN驱动架构 由于采用了RTT的spi device架构,不能再随心所遇的编写CAN驱动 了,之前内核虽然采用了RTT内核,但是驱动并没有严格严格按RTT推荐的架构来做,这次不同了,上次是因为4个MCP25625挂在了4路独立的SPI总线上&…

【图论】Floyd

算法提高课笔记) 文章目录 例题牛的旅行题意思路代码 排序题意思路代码 观光之旅题意思路代码 例题 牛的旅行 原题链接 农民John的农场里有很多牧区,有的路径连接一些特定的牧区。 一片所有连通的牧区称为一个牧场。 但是就目前而言,你…

程序依赖相关知识点(PDG,SDG)

什么叫可达性 变量v的定义d:对变量v的赋值语句称为变量v的定义 变量v的使用:在某个表达式中引用变量v的值 当变量v被再次赋值时,上一次赋值对变量v的定义d就被kill掉了 如果定义d到点p之间存在一条路径,且在路径中定义d没有被…

Java 多线程系列Ⅵ(并发编程的五大组件)

JUC 组件 前言一、Callable二、ReentrantLock三、Atomic 原子类四、线程池五、Semaphore六、CountDownLatch 前言 JUC(Java.util.concurrent)是 Java 标准库中的一个包,它提供了一组并发编程工具,本篇文章就介绍几组常见的 JUC 组…

汇川PLC学习Day2:编写检测IO端口状态程序

汇川PLC学习Day2:编写检测IO端口状态程序 一、 新增IO和模拟量模块 IO组态界面 模块参数设置 程序编写 想法是将DA模块的通道0接到AD模块的通道0,将DA模块的通道1接到AD模块的通道1,PLC本身发模拟量给自己PLC收模拟量转换,…

MySQL 8.0.25版本下载、安装及配置(Windows 10/11 64位)详细教程【超详细,保姆级教程!!!】

本文介绍关于windows 11如何安装配置MySQL 8.0.25版本的详细步骤 MySQL下载地址(官网) 一、下载MySQL 8.0.25 1、进入官网,选择版本 8.0.25 2、下载MySQL压缩包 3、下载完成后将压缩包解压至方便自己查找的位置(切记&#xf…

Tensor数据转换为稀疏矩阵

Tensor数据转换为稀疏矩阵 一、稀疏矩阵 原文链接 常用的稀疏矩阵存储格式有COO,CSR/CSC,LIL 1.COO COO(Coordinate format )是最为简单的格式,以三元组的形式存储稀疏矩阵。记录矩阵中非零元素的数值和所在的行序号和列序号。形式为&am…

工商业储能CE认证电表ADW300

安科瑞 华楠 ADW300 无线计量仪表主要用于计量低压网络的三相有功电能,具有体积小、精度高、功能丰富等优点,并且可选通讯方式多,可支持 RS485 通讯和 Lora、NB、4G、wifi 等无线通讯方式,增加了外置互感器的电流采样模式&#x…

【数据结构】线性表

线性表 顺序表链式存储单链表双链表 知识目录 顺序表 概念:用一组地址连续的存储单元依次存储线性表的数据元素,这种存储结构的线性表称为顺序表。 特点:逻辑上相邻的数据元素,物理次序也是相邻的。 只要确定好了存储线性表的…

基本数据类型和包装类型 使用规范

使用规范 1 概念1.1 基本数据类型1.2 包装类型1.3 对应关系1.4 自动装箱/拆箱 2 变量类型2.1 全局变量2.1.1 常量(Constants)2.1.2 类变量(Class Variables)2.1.3 实例变量(Instance Variables) 2.2 局部变…

快速实现抖音上下滑动,你不知道的ViewPager2用法,信息量巨大,建议收藏点赞。老tier~

万能ViewPager2适配器–SmartViewPager2Adapter 特点功能 完全脱离xml,所有效果只需要通过api调用 具体功能:1. 两句代码实现抖音列表效果2. 无感且丝滑,动态从头部或者底部加载数据3. 设置上下加载监听,再达到预加载limit的时…

用python实现基本数据结构【02/4】

*说明 如果需要用到这些知识却没有掌握,则会让人感到沮丧,也可能导致面试被拒。无论是花几天时间“突击”,还是利用零碎的时间持续学习,在数据结构上下点功夫都是值得的。那么Python 中有哪些数据结构呢?列表、字典、集…

STM32初学-外部RTC时钟芯片DS3231

RTC(Real_Time Clock)即实时时钟,它是电子产品中不可或缺的东西。其最直接的作用就是时钟功能。细心的朋友可以发现,当我们的电脑或者手机没联网时,仍然可以正常显示日期与时钟,这就是RTC的功劳。 RTC的运行无需网络连接&#xff…

python创建exe文件

1、搭建环境 pip install pyinstaller 2、准备测试代码 exe_test.py import timeprint("hello") print("hello") print("hello") print("hello")time.sleep(5) 注:添加sleep以便在执行exe文件的时候能看到结果 3、生…

在Windows操作系统上安装PostgreSQL数据库

在Windows操作系统上安装PostgreSQL数据库 一、在Windows操作系统上安装PostgreSQL数据库 一、在Windows操作系统上安装PostgreSQL数据库 点击 PostgreSQL可跳转至PostGreSQL的官方下载地址。 (1) (2)选择安装的目录&#xff…

入门人工智能 —— 使用 Python 进行文件读写,并完成日志记录功能(4)

入门人工智能 —— 使用 Python 进行文件读写(4) 入门人工智能 —— 使用 Python 进行文件读写打开文件读取文件内容读取整个文件逐行读取文件内容读取所有行并存储为列表 写入文件内容关闭文件 日志记录功能核心代码:完整代码:运…

小工具——筛选图像小工具

最近在公司手动筛图片,需要将某些含有检测目标的图像手动筛选出来用于做新模型的测试。我最开始是两个文件夹,来回复制粘贴,后来感觉这种效率太低了,就随手写了一个图像筛查小工具。代码如下: import sys from PyQt5.…