如何让 PHP 与 UserDir 一起工作

如何让 PHP 与 UserDir 一起工作

我有一个新的 CentOS 5.5 盒子,并安装了 Webmin+VirtualMin 3.79。我在 apache 中启用了 UserDir,网站可以通过以下方式查看http://ip地址/~用户/但 PHP 不起作用。(如果我通过其域名访问该网站,PHP 可以正常工作)

以下是我在 httpd.conf 中输入的内容,以便获取当前位置:

<IfModule mod_userdir.c>
    UserDir public_html
</IfModule>
<Directory /home/*/public_html>
  Options -Indexes +IncludesNOEXEC +FollowSymLinks +ExecCGI
  allow from all
  AllowOverride All
  AddHandler fcgid-script .php
  AddHandler fcgid-script .php5
</Directory>

当我尝试访问 PHP 文件时,出现 500 错误,并且以下内容记录到 /var/log/httpd/error_log:

suexec failure: could not open log file
fopen: Permission denied

任何帮助/指导都将不胜感激。

答案1

它应该是:

Order allow,deny
Allow from all

还要确保您的 php 在给定目录的 apache(httpd)服务器中使用正确的用户,否则它将无法访问这些文件。

答案2

您确定要在这种情况下使用 UserDir 吗?Apache 开发人员不鼓励在 suexec 环境中使用它,因为这可能会带来难以理解的安全隐患。

我们有一个关于 UserDir 替代方案的常见问题解答(其中还包括如何使 UserDir 正常工作):

http://www.virtualmin.com/documentation/web/faq

相关内容