.php 文件无法与 AddHandler 一起使用 - Apache 2.4

.php 文件无法与 AddHandler 一起使用 - Apache 2.4

我在 Apache 2.4 配置 PHP5 时遇到问题。我得到了以下信息:

<Directory / >
  Options +ExecCGI
  AddHandler cgi-script .cgi

  Action backButton /backButton.cgi
  AddHandler backButton .html .htm .php
</Directory>

它适用于.html.htm文件(即backButton.cgi运行),但不适用于.php。我已经尝试了关于这个主题的所有我能找到的,包括仅仅拥有.php(即AddHandler backButton .php)。

如果需要任何额外信息,请询问。

答案1

你有这个设置:

Action add-footer /script.pl
AddHandler add-footer .html .htm .php

我觉得这很奇怪。什么是add-footer?什么是script.pl?这似乎是一个例子Apache 站点这将导致对带有 html 扩展名的文件的请求触发 footer.pl CGI 脚本的启动。为什么需要这样做?

好像应该是:

AddHandler php5-script php

因此你的整个Directory指令应该是:

<Directory / >
  Options +ExecCGI
  AddHandler cgi-script .cgi .pl
  AddHandler php5-script php
</Directory>

编辑:由于原始海报确实想要该add-footer功能(现在称为backButton),看来这种配置是最好的处理方式;将我上面所做的事情与最初发布的原始海报结合起来:

<Directory / >
  Options +ExecCGI
  AddHandler cgi-script .cgi
  AddHandler php5-script .php

  Action backButton /backButton.cgi
  AddHandler backButton .html .htm .php
</Directory>

另一项编辑:似乎第一次我输入了php而不是.phpfor ,这是一个拼写错误AddHandler php5-script .php。不过,也可以尝试使用application/x-httpd-php5而不是php5-script

<Directory / >
  Options +ExecCGI
  AddHandler cgi-script .cgi
  AddHandler application/x-httpd-php5 .php

  Action backButton /backButton.cgi
  AddHandler backButton .html .htm .php
</Directory>

相关内容