PHP文件要下载,不显示?


Answers:


4

您还可以在conf文件中使用AddHandler和AddType指令。当他们真的不需要时,不需要使文件可执行。

AddHandler php5-script .php
AddType text/html .php

另外(可能)需要一个Loadmodule指令。
Rich Homolka

0

你必须告诉apache该文件是一个cgi脚本(不要忘记chmod + x)。通常,apache会将[wwwdir] / cgi-bin中的所有内容都设置为脚本,所以只需将其放在那里即可。否则,在apache配置中你需要这样的东西(在VirtiualHost部分内):

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

谢谢!chmod a+x解决问题,但这样安全吗?
西蒙

不仅安全,而且必要:要生成任何输出的PHP脚本,必须执行它。毕竟这是一个程序。
Tobias Plutat 2011年

@Tobias Plutat你不需要执行它,@ Xeonoactive的答案是正确的。Apache将其识别为php文件,并使用嵌入在apache中的php。Apache不认为是CGI。
Rich Homolka

遵循此方法将PHP文件作为CGI脚本运行。虽然这在技术上是有用的,但它不如在PHP5模块下运行它们那么高效。您可能会注意到,没有多少其他网站将PHP作为CGI运行。
Xenoactive 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.