Lnmp论坛搭建

目录

一、nginx服务搭建

1、关闭防火墙,并查看状态

2、上传依赖包,安装依赖包

3、配置文件

 4、编译与安装

5、创建运行用户 

6、添加系统服务

7、赋权、重启服务

 8、启动服务验证

二、MySQL数据库搭建

 1、上传安装软件包并解压

2、安装环境依赖包

 3、配置软件模块

 4、编译与安装

5、创建MySQL用户

6、修改配置文件

 7、更改安装目录和配置文件的属主属组

8、设置环境变量

 9、数据库初始化

 10、添加MySQL系统服务

 11、修改登录密码

 12、授权远程登录

三、编译安装PHP

1、上传软件包并解压

2、安装GD库和关联程序

3、配置软件模块

4、编译安装

5、调整PHP配置文件 

6、优化把PHP的可执行程序文件放入路径环境变量的目录中便于系统识别 

7、调整进程服务配置文件 

8、调整扩展配置文件 

9、启动php-fpm 

10、配置 Nginx 支持 PHP 解析

11、验证PHP 测试页

12、验证数据库工作是否正常

四、部署 Discuz!社区论坛 Web 应用

1、上传解压论坛压缩包

2、整论坛目录的权限 

3、论坛页面访问


一、nginx服务搭建

1、关闭防火墙,并查看状态

 systemctl stop firewalld        #关闭防火墙
systemctl disable firewalld    #关闭开机自启
Setenforce 0        #临时关闭增强机制

2、上传依赖包,安装依赖包

cd nginx-1.20.2/

yum -y install pcre-devel zlib-devel gcc gcc-c++ make

3、配置文件

./configure \
--prefix=/usr/local/nginx \                        #指定nginx的安装路径
--user=nginx \                                    #指定用户名
--group=nginx \                                    #指定组名
--with-http_stub_status_module            #启用 http_stub_status_module 模块以支持状态统计

 4、编译与安装

make && make instal

5、创建运行用户 

useradd -M -s /sbin/nologin nginx

6、添加系统服务

vim /lib/systemd/system/nginx.service        #进入配文文件

[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid        #PID
ExecStart=/usr/local/nginx/sbin/nginx        #启动
ExecrReload=/bin/kill -s HUP $MAINPID        #重载
ExecrStop=/bin/kill -s QUIT $MAINPID        #停止
PrivateTmp=true
[Install]
WantedBy=multi-user.target                    #启用多用户字符界面

7、赋权、重启服务

chmod 754 /lib/systemd/system/nginx.service        #赋权
systemctl start nginx.service            #开启服务
systemctl enable nginx.service            #开机自启

 8、启动服务验证

二、MySQL数据库搭建

 1、上传安装软件包并解压

2、安装环境依赖包

yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake

 3、配置软件模块

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \        #指定mysql的安装路径
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \  #指定mysql进程监听套接字文件(数据库连接文件)的存储路径           
-DSYSCONFDIR=/etc \                            #指定配置文件的存储路径
-DSYSTEMD_PID_DIR=/usr/local/mysql \             #指定进程文件的存储路径
-DDEFAULT_CHARSET=utf8  \                     #指定默认使用的字符集编码,如 utf8
-DDEFAULT_COLLATION=utf8_general_ci \            #指定默认使用的字符集校对规则
-DWITH_EXTRA_CHARSETS=all \                    #指定支持其他字符集编码
-DWITH_INNOBASE_STORAGE_ENGINE=1 \           #安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \            #安装ARCHIVE存储引擎 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \          #安装BLACKHOLE存储引擎 
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \        #安装FEDERATED存储引擎 
-DMYSQL_DATADIR=/usr/local/mysql/data \          #指定数据库文件的存储路径
-DWITH_BOOST=/usr/local/boost \                 #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
-DWITH_SYSTEMD=1                             #生成便于systemctl管理的文件

 4、编译与安装

make -j 2 && make install

5、创建MySQL用户

useradd -M -s /sbin/nologin  mysql

6、修改配置文件

vim /etc/my.cnf                           #删除原配置项,再重新添加下面内容

[client]                                  #客户端设置
port = 3306
socket=/usr/local/mysql/mysql.sock      
[mysqld]                                  #服务全局设置
user = mysql                              #设置管理用户
basedir=/usr/local/mysql                  #指定数据库的安装目录
datadir=/usr/local/mysql/data             #指定数据库文件的存储路径
port = 3306                               #指定端口
character-set-server=utf8                 #设置服务器字符集编码格式为utf8
pid-file = /usr/local/mysql/mysqld.pid    #指定pid 进程文件路径
socket=/usr/local/mysql/mysql.sock        #指定数据库连接文件
bind-address = 0.0.0.0                    #设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开
skip-name-resolve                         #禁用DNS解析
max_connections=2048                      #设置mysql的最大连接数
default-storage-engine=INNODB             #指定默认存储引擎
max_allowed_packet=16M                    #设置数据库接收的数据包大小的最大值
server-id = 1                             #指定服务ID号
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
 

 7、更改安装目录和配置文件的属主属组

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /etc/my.cnf

8、设置环境变量

echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile    
source /etc/profile

 9、数据库初始化

cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \                #生成初始化密码为空
--user=mysql \                      #指定管理用户
--basedir=/usr/local/mysql \        #指定数据库的安装目录
--datadir=/usr/local/mysql/data        #指定数据库文件的存储路径

 10、添加MySQL系统服务

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/        #用于systemctl服务管理
systemctl daemon-reload         #刷新识别     
systemctl start mysqld.service  #开启服务
systemctl enable mysqld         #开机自启动

netstat -anpt | grep 3306       #查看端口并过滤3306使用状况

 11、修改登录密码

mysqladmin -u root -p password "123456"   

 #给root账号设置密码为123456,提示输入的是原始密码(为空)

 12、授权远程登录

mysql -u root -p
>grant all privileges on *.* to 'root'@'%' identified by 'abc123';
##授予root用户可以在所有终端远程登录,使用的密码是abc123,并对所有数据库和所有表有操作权限
 
>show databases;            #查看当前已有的数据库
>exit                        #退出

三、编译安装PHP

1、上传软件包并解压

2、安装GD库和关联程序

#用来处理和生成图片
yum -y install gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

3、配置软件模块

./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip

4、编译安装

make && make install

5、调整PHP配置文件 

php有三个配置文件:
php.ini 主配置文件
php-fpm.conf 进程服务配置文件
www.conf 扩展配置文件

#调整主配置文件:
cp /opt/php-7.1.10/php.ini-development /usr/local/php/lib/php.ini    
vim /usr/local/php/lib/php.ini
--1170行--修改
mysqli.default_socket = /usr/local/mysql/mysql.sock
--939行--取消注释,修改
date.timezone = Asia/Shanghai

 

6、优化把PHP的可执行程序文件放入路径环境变量的目录中便于系统识别 

ln -s /usr/local/php/bin/* /usr/local/bin/

php -m                #查看PHP 加载了哪些模块

7、调整进程服务配置文件 

cd /usr/local/php/etc/

cp php-fpm.conf.default php-fpm.conf

vim php-fpm.conf

--17行--去掉";"注释

pid = run/php-fpm.pid

8、调整扩展配置文件 

cd /usr/local/php/etc/php-fpm.d/

cp www.conf.default www.conf

在这里插入图片描述

9、启动php-fpm 

ln -s /usr/local/php/sbin/* /usr/local/sbin        #创建软连接
/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini
netstat -anpt | grep 9000    #过滤端口查询

在这里插入图片描述

10、配置 Nginx 支持 PHP 解析

vim /usr/local/nginx/conf/nginx.conf
--65行--取消注释,修改
location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;    #将 /scripts 修改为nginx的工作目录
   #fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;  #$document_root 代表当前请求在root指令中指定的值
    include        fastcgi_params;
}

11、验证PHP 测试页

 vim /usr/local/nginx/html/index.php
<?php
phpinfo();
?>

12、验证数据库工作是否正常

mysql -u root -p 
CREATE DATABASE bbs;#把bbs数据库里面所有表的权限授予给bbsuser,并设置密码
GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';
GRANT all ON bbs.* TO 'bbsuser'@'localhost' IDENTIFIED BY 'admin123';
flush privileges;#刷新数据库

四、部署 Discuz!社区论坛 Web 应用

1、上传解压论坛压缩包

unzip Discuz_X3.4_SC_UTF8.zip  -d /opt/dis 

2、整论坛目录的权限 

调整论坛目录的权限:
cd /usr/local/nginx/html/bbs/
chown -R nginx ./config/
chown -R nginx ./data/
chown -R nginx ./uc_client/
chown -R nginx ./uc_server/

chmod -R 777 ./config/ ./data/ ./uc_client/ ./uc_server/

#若以上权限不满足,则赋予777权限

3、论坛页面访问

论坛页面访问
http://192.168.94.151/bbs/install/index.php

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值