一、名词解释:
LNMP:
L : 代表 Linux 操作系统,为网站提供了可靠的运行环境 |
N : 代表 Nginx,它是一款轻量级的高性能 Web 服务器,能够快速处理大量并 发连接,有效提升网站的访问速度和性能 |
M : 代表 MySQL 数据库,用于存储网站的各种数据 |
P : 代表 PHP,是一种应用于 Web 开发的脚本语言,能够与 Nginx 服务器和 MySQL 数据库紧密结合,实现动态网页的生成、数据的交互和处理等功能 |
二、实验
1.首先我们准备一台 linux 主机,版本最好为 9 版本;如果主机不是初始状态建议恢复快照至初始状态
2.关闭 linux 主机防火墙以及 selinux
[root@server~]# systemctl stop firewalld
[root@server~]# setenforce 0
3.挂载磁盘操作
[root@server~]# mount /dev/sr0 /mnt
4.编写 yum 源配置文件
[root@server ~]# vim /etc/yum.repos.d/base.repo
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0
5.通过 dnf 安装 Web 程序
[root@server ~]# dnf install nginx -y
6. nginx 的默认网站路径, 为了实验能够配置多个网站,建议放在不同的路径
[root@server ~]# vim /etc/nginx/nginx.conf
7.将博客网站放置自定义路径并根据配置文件创建资源文件(/www)
[root@server ~]# vim /etc/nginx/conf.d/luntan.conf # luntan.conf为自定义文件
[root@server ~]# mkdir /www
8.将路径切换到 /www 下利用 xftp 传输工具将 Windows 文件传输到 linux 主机并查看文件是否传输成功
[root@server ~]# cd /www
[root@server www]#
[root@server www]# ll
9.解压文件并查看解压出的文件信息
[root@server www]# unzip Discuz_X3.5_SC_UTF8_20230520.zip
[root@server www]# ll
10.切换到 upload 目录中会发现 index.php文件(Web 服务器会自动寻找并执行该目录下的默认文件),接着我们自定义 php 界面配置解析
[root@server ~]# cd /www/upload
[root@server upload]# vim /etc/nginx/conf.d/luntan.conf
server {listen 80; # 监听 80 端口,接收 HTTP 请求server_name 192.168.96.142; # 服务器域名或 IP,用于匹配请求的目标地址root /www; # 网站根目录,请求的文件将从这个目录查找# 静态文件缓存配置location ~* \.(jpg|jpeg|png|gif|css|js)$ {#~* 匹配不区分大小写(表示不区分大小写的正则匹配,匹配这些扩展名的文件)expires 30d; # 设置缓存时间(# 设置浏览器缓存时间为 30 天,减少重复请求)access_log off; # 关闭这些文件的访问日志,减少 IO 开销} # 文件上传路径配置 location /upload/ {fastcgi_pass unix:/run/php-fpm/www.sock; # 通过 Unix Socket 连接 PHP-FPMfastcgi_index index.php; # 默认执行文件fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 设置脚本路径include fastcgi_params; # 包含其他 FastCGI 参数}
}
11.解析 php 代码需要下载 php 程序,下载程序之前先进行磁盘挂载操作
[root@server upload]# mount /dev/sr0 /mnt
[root@server upload]# dnf install php* -y
12.另外我们需要注意的是在 luntan.conf 的文件中路径问题
13.重启服务程序测试代码的正确性
[root@server www]# systemctl restart nginx
14.安装 mariadb-server 程序并启动
[root@server upload]# dnf install mariadb-server -y
[root@server upload]# systemctl restart mariadb
15.执行 mysql_secure_installation ,是 MySQL 数据库提供的一个安全配置脚本,用于设置和强化 MySQL 服务器的安全性,设置完数据库的密码后进入数据库
[root@server ~]# mysql_secure_installation
[root@server ~]# mysql -uroot -p
16.进入到浏览器中输入配置服务器的 IP 地址(192.168.96.132/upload/)
① 点击同意进入下一步
② 如果显示当前版本较老不必理会,直接点击取消
③ 这里会发现我们的目录文件权限有问题(除去前两个目录文件显示不存在,其余为不可写),需要到程序端更改文件及目录权限以及创建不存在的文件目录
[root@server www~]# chmod 777 ./upload/{config,data,uc_*} -R # 加R表示向下递归,该路径以及路径下所有文件权限都更改
④ 更改完权限后刷新网页即可点击下一步继续
⑤ 默认即可,点击下一步
⑥ 填写数据库信息只用填写数据库名以及数据库密码;
填写管理员信息填写密码即可
⑦ 安装完成后点击直接访问站点进入论坛
⑧ 右上角登录一下即可拥有自己的论坛!
注意:更改完权限以及配置后注意将 nginx,mariadb,php-fpm 服务重启