当前位置: 首页>>技术问答>>正文


PHP脚本不在Apache服务器上执行

, ,

问题描述

我刚刚重新安装了Apache和PHP5但是当我访问我的doc root时它只下载了一个”download”文件。当我尝试documentroot /index.php时,它只是下载PHP文件。

我安装了PHP,但Apache似乎不想执行它。人们建议在我的httpd.conf中添加’Load Module’线,但我没有该文件。

最佳解决思路

打字:

sudo apt-get install apache2 php5 libapache2-mod-php5

将安装您需要的一切,并将启动支持PHP的apache服务器。

要验证是否已加载php模块,请键入:

a2query -m php5

如果未启用,则加载:

sudo a2enmod php5

并重启apache:

sudo service apache2 restart

更新php7.0,在Ubuntu 16.04和16.10上测试

感谢评论,我更新了php7的答案。

安装:

sudo apt-get install apache2 php7.0 libapache2-mod-php7.0 

校验:

a2query -m php7.0

加载:

sudo a2enmod php7.0

重启apache:

sudo service apache2 restart

次佳解决思路

另一个常见原因是php短标签<?未通过默认的php.ini配置启用,因此在升级或重新安装后,该设置可能会被关闭,php代码可能依赖于它。尝试用<?php替换<?

(Credit)

第三种解决思路

Ubuntu 16.04已经转移到PHP 7.这个单一命令将为您完成任务:

sudo apt-get install apache2 php libapache2-mod-php

这里libapache2-mod-php是安装libapache2-mod-php7的meta-package。

第四种思路

在终端打开php.ininano

sudo nano /etc/php/php5.6/apache2/php.ini

然后改变:

short_open_tag = Off

short_open_tag = On

然后保存然后重启apache2:

sudo systemctl restart apache2

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1756.html,未经允许,请勿转载。