我在我的Ubuntu笔记本电脑上安装了一个本地LAMP服务器,用于testing各种PHP脚本。
有时,当我做错了什么,而不是得到一个错误,我正在testing的脚本是提供下载。 为什么是这样的,如何解决?
服务器不能识别脚本作为本地执行的东西,因此它将其作为文件提供。
这些行应该出现在你的Apacheconfiguration中。 请注意,可能需要为.so模块更改path,具体取决于您的configuration:
# -- if you're using PHP 5, uncomment this line to activate it #LoadModule php5_module libexec/libphp5.so # -- if you're using PHP 4, uncomment this line to activate it #LoadModule php4_module libexec/libphp4.so AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps
后续重新启动Apache服务和PHP应加载到Apache运行就好了。
我发现发生这种情况的一些原因是:
我使用的一个testing是在同一目录(verify.php)中创build一个包含以下内容的文件:
<?php phpinfo(); ?>
如果该文件在我的浏览器中执行,那么前3个点都可以
我会同意艾利,这是通常的原因。 不过,你只是有时候特意说。 任何机会你正在改变内容types头?
一个常见的错误是在标题发送之前将某些东西打印到页面上。
另外请注意,如果您的.htaccess文件与您的php脚本位于相同的文件夹中,则可能是某些执行问题的原因。
例如,如果您从另一台服务器获得站点文件的副本,那么您的htaccess文件可能具有如下一行:
AddHandler x-httpd-php5-3 .php
但是在你的实际服务器上,你可能正在运行另一个版本的PHP。 所以它不会正确。