LNMP架构搭建Discuz论坛(实战!)

本文详细介绍了如何在Linux环境中搭建LNMP架构,包括编译安装Nginx、MySQL和PHP,以及如何配置PHP的FPM模块。最后,通过编译安装和配置,成功搭建了一个Discuz论坛,实现网页动静分离和高效运行。
摘要由CSDN通过智能技术生成

什么是LNMP架构

LNMP平台就是Linux、Ngnix、 MySQL、 PHP的组合架构,需要Linux服务器、MySQL数据库、PHP解析环境

MySQL安装配置

为了与Nginx、PHP环境保持一致,此处选择采用源代码编译的方式安装MySQL组件

MySQL部署的方法

  • 编译安装MySQL
  • 优化调整
  • 初始化数据库
  • 启动mysq|服务并设置root数据库账号的密码

PHP解析环境的安装

配置网页动静分离,解析PHP,有两种方法可以选择

  • 使用PHP的FPM模块
  • 将访问PHP页面的Web请求转交给Apache服务器去处理

较新版本的PHP已经自带FPM模块,用来对PHP解析实例进行管理、优化解析效率

  • FastCGI将Http Server和动态脚本语言分离开
  • Nginx专门处理静态请求,转发动态请求
  • PHP_FPM专门 ]解析PHP动态请求

单服务器的LNMP架构通常使用FPM的方式来解析PHP,本次也使用FPM模块处理动态请求。

PHP编译安装步骤

  • 编译安装PHP
  • 编译选项时添加"–enable-fpm” 以启用此模块
  • 安装后的调整,主要是配置文件的建立与相应命令工具的路径优化
  • 安装ZendGuardloader (提高PHP解析效率),并进行加载配置

实验准备

1.将宿主机上的工具包共享出去

2.通过Samba服务将工具包挂载到Linux系统

[root@localhost ~]# mkdir /mnt/tools
[root@localhost ~]# smbclient -L //192.168.100.50/
Enter SAMBA\root's password: 
OS=[Windows 10 Enterprise LTSC 2019 17763] Server=[Windows 10 Enterprise LTSC 2019 6.3]

	Sharename       Type      Comment
	---------       ----      -------
	IPC$            IPC       远程 IPC
	share           Disk      
	tools           Disk      
	Users           Disk      
Connection to 192.168.100.50 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
NetBIOS over TCP disabled -- no workgroup available
[root@localhost ~]# mount.cifs //192.168.100.50/tools /mnt/tools/
Password for root@//192.168.100.50/tools:  
[root@localhost ~]# 

编译安装Nginx服务

1.将nginx服务源码包解压到“/opt/”目录

[root@localhost ~]# cd /mnt/tools/
[root@localhost tools]# ls
awstats-7.6.tar.gz                extundelete-0.2.4.tar.bz2  forbid.png                 jdk-8u191-windows-x64.zip  LAMP-C7  picture.jpg
cronolog-1.6.2-14.el7.x86_64.rpm  fiddler.exe                intellijideahahau2018.rar  john-1.8.0.tar.gz          LNMP
[root@localhost tools]# cd LNMP/
[root@localhost LNMP]# ls
Discuz_X3.4_SC_UTF8.zip  mysql-boost-5.7.20.tar.gz  nginx-1.12.2.tar.gz  php-7.1.10.tar.bz2  php-7.1.20.tar.gz
[root@localhost LNMP]# tar zxvf nginx-1.12.2.tar.gz -C /opt/
...............//省略解压过程
[root@localhost LNMP]#

2.安装编译所需工具包

[root@localhost ~]# yum install gcc gcc-c++ pcre-devel zlib-devel -y
...........//省略安装过程
[root@localhost ~]#

3.切换到nginx服务源码包目录,创建一个nginx用户

[root@localhost LNMP]# cd /opt/
[root@localhost opt]# ls
nginx-1.12.2  rh
[root@localhost opt]# cd nginx-1.12.2/
[root@localhost nginx-1.12.2]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
[root@localhost nginx-1.12.2]# 
[root@localhost nginx-1.12.2]# useradd -M -s /sbin/nologin nginx    //-M 不创建家目录
[root@localhost nginx-1.12.2]# id nginx
uid=1001(nginx) gid=1001(nginx) 组=1001(nginx)
[root@localhost nginx-1.12.2]# 

4.配置nginx服务

[root@localhost nginx-1.12.2]# ./configure \
> --prefix=/usr/local/nginx \      //安装路径
> --user=nginx \    //属主
> --group=nginx \   //属组
> --with-http_stub_status_module   //启用统计模块

5.编译安装nginx服务

[root@localhost nginx-1.12.2]# make && make install
..........//省略过程
[root@localhost nginx-1.12.2]#

6.在易于系统识别的目录下,建立nginx服务命令的软链接

[root@localhost nginx-1.12.2]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/   //建立软链接
[root@localhost nginx-1.12.2]# nginx -t    //配置文件测试
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值