2

我正在尝试使 suPHP 正常工作,我按照教程进行操作,并且似乎已正确安装它。

现在我的问题是这个

1)我docrootsuphp.conf文件中设置,但/var/www默认设置为。我遇到的问题是我的域也存储在另一个目录下。因此,例如,我将子域放在一个目录中,将常规域放在另一个目录中。因此,我的浏览器收到一个错误,告诉我域正在解析到不在配置中的目录。

2) 我想知道如何suPHP_UserGroup在我的 VirtualHost 配置下设置特定域的用户/组。

这是一个示例 VirtualHost,我必须更好地展示我的问题。

<VirtualHost *:80>
    ServerAdmin admin@domain.com
    ServerAlias mail.domain.com
    DocumentRoot /web/users/domain.com/subdomains/mail/webmail

    <IfModule mod_suphp.c>
        suPHP_UserGroup mail mail
    </IfModule>

    <Directory "/web/users/domain.com/subdomains/mail/webmail">
        AllowOverride All
        Order allow,deny
        Allow from All
    </Directory>
</VirtualHost>

当我重新加载 apache 时出现错误:

Invalid command 'suPHP_UserGroup', perhaps misspelled or defined by a module not included in the server configuration

我配置suPHP了这个:

./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=owner --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable-SUPHP_USE_USERGROUP=yes
4

2 回答 2

0

http://www.suphp.org/DocumentationView.html?file=apache/CONFIG

suPHP_UserGroup(期望用户名和组名)

  • 仅在使用 setid-mode "force" 或 "paranoid" 编译时支持 * 指定运行 PHP 脚本的用户名和组名。此设置只能在 a 或上下文中使用。示例:suPHP_UserGroup foouser bargroup

    ./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user =apache --with-setid-mode=paranoid --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable-SUPHP_USE_USERGROUP=yes

于 2013-11-26T00:35:38.337 回答
-1

我将以下四行添加到我的虚拟主机定义中。第二行与您的问题有关。

suPHP_Engine on
suPHP_UserGroup vhost_owner vhost_group 
suPHP_AddHandler x-httpd-php
AddHandler x-httpd-php .php .php3 .php4 .php5
于 2012-08-23T13:00:30.610 回答