CentOS 7下yum安装Apache及不解析php问题的解决

2022-07-24 11:49:10 浏览数 (1)

首先,说一下问题发生的场景:

在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

0 人点赞