一、目标
centos7下Apache和PHP运行环境的安装,将php程序运行起来
二、平台
[root@xserver ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
5.5.60-MariaDB MariaDB Server
三、解析
1.做本实验前mariadb已经安装完毕,而且mariadb相关设置已设置完毕,这里不再做mariadb相关介绍。
四、Apache服务的安装
1.安装Apache及相关软件
[root@xserver ~]# yum install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql -y
2.启动Apache服务,并设置其开机自启
[root@xserver ~]# systemctl start httpd.service
[root@xserver ~]# systemctl enable httpd.service
3.防火墙放行http对外服务,并重启防火墙让配置生效
[root@xserver ~]# firewall-cmd --permanent --add-service=http
success
[root@xserver ~]# firewall-cmd --reload
success
[root@xserver ~]#
3-1.看防火墙都开放了哪些服务,如果已经开放了http了,那么我们就无需再次操作http放行策略了
[root@xserver html]# firewall-cmd --list-all
4.此时,apache其实已经能被访问了,你可以去客户端上访问http://服务器地址。此时apache仅仅支持静态web,是不支持php的。
五、安装队php的支持环境
1.安装php和php-devel两个重要环境支持(其余是可选)
[root@xserver ~]# yum install php php-devel php-mysql php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-fpm -y
2.建一个php测试页,看看php是否被centos完美运行了。
[root@xserver ~]# cd /var/www/html/
[root@xserver html]# vim kahn.php
在kahn.php中写上如下内容:
<?php
echo '<title>hello kahn</title>';
phpinfo();
?>
3.重启apache服务,让apache支持运行php
[root@xserver html]# systemctl restart httpd
4.激动人心的时刻到了,打开浏览器输入http://10.100.100.210/kahn.php
到此,Linux+Apache+PHP就安装完成了。
六、本篇博客的扩展,安装部署DiscuZ_php论坛。
1.去官网https://www.discuz.net/下载DiscuZ,我们本次用的版本是Discuz_X3.3_SC_UTF8.zip
[root@xserver Downloads]# wget http://download.comsenz.com/DiscuzX/3.3/Discuz_X3.3_SC_UTF8.zip
2.解压论坛程序压缩包到php默认的www根目录下的bbs文件夹去
[root@xserver Downloads]# mkdir /var/www/html/bbs
[root@xserver Downloads]# unzip Discuz_X3.3_SC_UTF8.zip -d /var/www/html/bbs
3.在浏览器输入http://服务器ip/bbs/upload/ 回车。
http://10.100.100.210/bbs/upload/install/ 点我同意
4.此时看到有一大坨文件夹不支持写权限,还有最后一个貌似我们没有安装php连接mysql的驱动
5.上图中的所有目录都是不可写的解决办法
进/var/www/html/bbs/upload/目录下,把不写的目录都加上写权限,如:chmod o+w -R config/ data/ uc*/
如果还不行,那么就是selinux搞的鬼,setenforce 0执行一下。
6.上图中我截图的还报错mysqli_connect()不支持的问题,我搜了网上好多帖子说是什么php.ini的【extension_dir = "/usr/lib64/php/modules"】,我反正这么做是没能解决的。最终原因是没有安装php-mysql驱动,安装一下[root@xserver upload]# yum install php-mysql -y 然后重启aphache就解决了。
7.没能截图。让填写数据库用户名密码,我们就创建个叫Discuz的数据库,再创建个用户给它。
MariaDB [(none)]> CREATE DATABASE Discuz DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected (0.02 sec)
MariaDB [(none)]> GRANT ALL ON Discuz.* to 'kahnbbs'@'localhost' IDENTIFIED BY "sql123pwd";
剩下的就没啥了,没啥难度。
kahn 2019年9月16日22:12:27