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文件输出,部处理内容