LNMP架构的简单应用--部署论坛

1.解压论坛php代码(如果没有unzip命令,下载一个即可yum install unzip -y)

[root@server1 ~]# ls
[root@server1 ~]# unzip Discuz_X3.2_SC_UTF8.zip -d /usr/local/lnmp/nginx/html/

在这里插入图片描述
在这里插入图片描述
查看论坛解压的位置中是否有文件

[root@server1 ~]# cd /usr/local/lnmp/nginx/html/
[root@server1 html]# ls
[root@server1 html]# cd upload/
[root@server1 upload]# ls

在这里插入图片描述
2.在浏览器中输入网址并点击我同意

http://172.25.66.1/upload/install/

在这里插入图片描述
发现点击我同意后在目录,文件权限检查和很数依赖性检查中报错
在这里插入图片描述
在这里插入图片描述
3.先解决函数依赖性检查,由图可知,php的环境编译出错,所以无法与mysql正常连接,现在先将php服务关闭

[root@server1 upload]# cd
[root@server1 ~]# cd php-5.6.35
[root@server1 php-5.6.35]# /etc/init.d/php-fpm stop

在这里插入图片描述
之前php编译环境出错,现在重新创建预编译环境,加上以下参数(–enable-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd)

[root@server1 php-5.6.35]# ./configure --prefix=/usr/local/lnmp/php --with-config-file-path=/usr/local/lnmp/php/etc --with-openssl --with-snmp --with-gd --with-zlib --with-curl --with-libxml-dir --with-png-dir --with-jpeg-dir --with-freetype-dir --with-gmp --with-gettext --with-pear --enable-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-inline-optimization --enable-soap --enable-ftp --enable-sockets --enable-mbstring --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mcrypt --with-mhash

在这里插入图片描述
编译与安装

[root@server1 php-5.6.35]# make && make install

在这里插入图片描述
注意:
编译与安装之后配置文件中的内容不会更改,所以不需要修改(文件/usr/local/lnmp/php,/usr/local/lnmp/php/etc/php.ini),但是需要重新进行链接,因为重新编译和安装后会覆盖,脚本出现了改变,所以必须重新进行链接

重新进行链接

[root@server1 php-5.6.35]# cd sapi/fpm/
[root@server1 fpm]# cp init.d.php-fpm /etc/init.d/php-fpm 
cp: overwrite `/etc/init.d/php-fpm'? y
#查看其是否有可执行权限
[root@server1 fpm]# ll /etc/init.d/php-fpm 

在这里插入图片描述
开启php服务并通过查看端口验证其是否成功开启

[root@server1 fpm]# /etc/init.d/php-fpm start
[root@server1 fpm]# netstat -tnlp

在这里插入图片描述
此时在浏览器中刷新,会发现函数依赖性检查的问题已经成功解决
在这里插入图片描述
4.最后解决文件权限问题(通过查看错误目录文件的目录,给其递归将权限设为777)

[root@server1 fpm]# cd /usr/local/lnmp/nginx/html/upload/
[root@server1 upload]# chmod 777 config data -R
[root@server1 upload]# chmod 777 uc_client uc_server -R

在这里插入图片描述

  • 再次刷新浏览器发现文件权限问题也已经解决
    在这里插入图片描述
  • 点击全新安装
    在这里插入图片描述
  • 在安装数据库页面填写数据库信息以及管理员信息
    在这里插入图片描述
  • 安装会出现报错数据库连接错误(No such file or directory)
    在这里插入图片描述

所以需要在其内增加socket的路径进行连接

[root@server1 upload]# cd /usr/local/lnmp/php/etc/
[root@server1 etc]# vim php.ini 
[root@server1 etc]# /etc/init.d/php-fpm reload

在这里插入图片描述
配置文件中的内容如下:

1013 pdo_mysql.default_socket=/usr/local/lnmp/mysql/data/mysql.sock
1162 mysql.default_socket =/usr/local/lnmp/mysql/data/mysql.sock
1221 mysqli.default_socket =/usr/local/lnmp/mysql/data/mysql.sock

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 如果以上操作都已完成,可以依旧出现上面的报错,可能是因为mysql服务没有开启,开启即可

    [root@server1 etc]# /etc/init.d/mysqld start

5.所有操作完成后,便会出现以下界面,说明论坛安装成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 以普通用户登陆论坛
    在这里插入图片描述

  • 点击管理中心
    在这里插入图片描述

  • 在管理中心中以管理员身份登陆
    在这里插入图片描述

  • 点击首页后会出现一串字符,按照字符删除内容即可

    [root@server1 etc]# cd /usr/local/lnmp/nginx/html/upload/install/
    [root@server1 install]# rm -rf index.php

在这里插入图片描述
在这里插入图片描述
#再次在浏览器中刷新即可成功登陆(安全提示,点击以下链接即可)
在这里插入图片描述
在这里插入图片描述
6.在浏览器中试图登录,并创建用户(此处创建用户作用是为了之后在mysql的Discuz表中验证)
在这里插入图片描述
在这里插入图片描述
在shell界面中登录mysql用户,并在Discuz表中的索引中寻找

[root@server1 install]# mysql -uroot -p
mysql> SHOW DATABASES;
mysql> USE Discuz;
mysql> SELECT * from pre_ucenter_members;
mysql> exit

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7.将配置文件中的php相关配置删除,再次刷新浏览器中的页面时,会发现显示Opening admin.php,说明php文件没有被导入

[root@server1 install]# cd /usr/local/lnmp/nginx/conf/
[root@server1 conf]# vim nginx.conf
[root@server1 conf]# nginx -s reload

在这里插入图片描述
nginx.conf配置文件中的内容如下:

 65         #location ~ \.php$ {
 66         #    root           html;
 67         #    fastcgi_pass   127.0.0.1:9000;
 68         #    fastcgi_index  index.php;
 69         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
 70         #    include        fastcgi.conf;
 71         #}

在这里插入图片描述

  • 刷新浏览器之后就会发现admin.php页面被认为是html文件输出,部处理内容
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_39376481/article/details/89680826