如何配置 Apache 以在 Alias 中处理 PHP

如何配置 Apache 以在 Alias 中处理 PHP

我已在 httpd.conf 中将 Apache 配置为另一个目录的别名,如下所示:

Alias <a_dir> "<full path>"

这对于诸如的常规 HTML 文档来说效果很好<a_dir>/home.html,但是诸如的 PHP 文件<a_dir>/script.php则不会在服务器上处理(即作为常规文本文件提供给浏览器)。

据我所知,PHP 已正确安装 - 在“正常”目录中处理文件。我尝试过也包含一个ScriptAlias,但这并没有改变任何东西。

我错过了什么?

答案1

您能否提供在 /var/log/apache2/access.log(或您正在使用的任何路径)中看到的任何错误消息?我刚刚在我的 ubuntu maverick 盒子上尝试了以下内容:

Alias /a_dir/ "/home/USERNAME/phptest/index.php"

我的 index.php 仅包含:

<?php
phpinfo()
?>

让我看一下错误和访问日志,应该可以了解更多信息

答案2

别名工作正常,看来我需要在我的配置中添加以下几行:

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

这样,php 文件就被正确处理了。我不知道为什么另一个目录中的 php 文件在没有它的情况下也能正常工作,但现在看起来一切都正常了。

相关内容