1.选择操作系统
本文使用了Ubuntu-18.04.5
![]()
2.使用VMware创建一个虚拟机



3.查看是否安装nginx、php、mysql、apache,发现都没安装(后来发现apache2默认安装了,然后我把apache2删了)

4.安装nginx
\
5.安装php,php7.2-fpm


![]()
6.下载mysql
![]()
查看启动状态

7.安全加固
- 加固mysql安全
配置mysql_secure_installation

修改密码

![]()
可以发现我们的密码强度是100
删除匿名用户:

限制root用户远程登陆:

删除测试数据库:

重新加载特权表:

登录:
用户名密码不能登录,只能用sudo mysql登录


把身份验证方法从auth_socket改为mysql_native_password:

![]()
思考:
---------------------------------------------------
我们介绍当获得root权限后,mysql有密码,如何进入:
找到修改etc/mysql/mysql.conf.d/mysqld.cnf:
在[mysqld]后加skip-grant-tables
![]()

重启
![]()
就可以登录了,密码直接回车,不需要密码:

- 账户安全加固
对root和账户设置一个复杂密码。
关闭SSH服务:
![]()
这里没安装
- 文件权限加固
限制Umash值:
![]()
限制日志文件:防止被删
![]()
- 安装安全狗
8.配置nginx
创建nginx的默认启动用户
groupadd www -g 666
useradd www -u 666 -g 666 -s /sbin/nologin -M
修改nginx配置文件
sed -i '/^user/c user www;' /etc/nginx/nginx.conf
启动,加入开机自启动
systemctl start nginx
systemctl enable nginx
配置php-fpm用户与Nginx的运行用户保持一致,不修改的话,nginx连不上PHP
sed -i '/^user/c user = www' /etc/php/7.2/fpm/pool.d/www.conf
sed -i '/^group/c group = www' /etc/php/7.2/fpm/pool.d/www.conf
----
中途遇到了一些问题,找了很多方法,最终发现是因为nginx配置文件的格式是
http
{}
Service
{}
这种形式,而需要的格式是
http
{
Service
{}
}
这样的
----
启动

9.设置mysql
创建数据库:

创建表:

插入数据与查询:

10.使nginx支持php
下载依赖php7.2-fpm
配置php7.2-fpm


测试一下

11.使php支持mysql
这里只要下载依赖php7.2-mysql
12.nginx使用php获得mysql数据库内容

13.扩展:
Apache环境:

环境已经按好了

已经在运行了,下面调用一下mysql:

成功。
本文详细记录了在Ubuntu-18.04.5操作系统上搭建Web环境的过程,包括安装和配置Nginx、PHP7.2-fpm、MySQL,以及解决配置过程中遇到的问题,确保Web服务器能够正确运行并连接MySQL数据库。
897

被折叠的 条评论
为什么被折叠?



