首先,说一下问题发生的场景:
在CentOS 7下用 yum 安装 apache ,因为 CentOS 的源自带 php 5.4 不能符合环境要求,而不想用其他源,所以选择源码编译安装 php 5.6
安装完毕后,apache 不解析 php ,不解析的现象是浏览器直接显示或下载了 php 文件的源代码
过程略带说一下了,具体步骤自行搜索,然后重点说下容易踩的几个坑
1. yum 安装 apache 后,必须安装依赖包 httpd-devel ,否则是不存在文件 apxs 的,而 apxs 的路径在编译 php 时需要配置
yum install httpd
yum install httpd-devel
2. 查看 apsx 所在路径
rpm -ql httpd-devel|grep apxs
/usr/bin/apxs //此行为 grep 结果,不同系统的路径可能不同,以实际结果为准,下同
/sur/share/man/man1/apxs.1.gz
3. 编译php时,加入 apxs 路径参数,作用是促使生成 libphp5.so
./configure \
--with-apxs2=/usr/bin/apxs
4. 安装
make && make install
5. 配置服务、启动服务、环境变量,此处略
6. 修改apache配置文件,Centos7.4 下的apache2.4的配置文件路径为
vim /etc/httpd/conf/httpd.conf
//在LoadModule后面添加:LoadModule php5_module modules/libphp5.so //不添加则访问.php文件将会变成下载
//在DirectoryIndex后面添加:index.php
//在AddType application/x-gzip .gz .tgz后面添加:AddType application/x-httpd-php .php //.php前面有一个空格
7. 重启服务
常用命令
#设置开机启动:
systemctl enable httpd.service
#启动服务:
systemctl start httpd.service
#停止服务:
systemctl stop httpd.service
#重启服务:
systemctl reload httpd.service
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx