Apache-2.2

帶有 fcgid 和 suexec 的 Apache:第二個虛擬主機返回“禁止”

  • June 30, 2011

我使用 suExec 和 vhosts 設置了 Apache 安裝。原始(“主要”)vhost 工作正常,但我添加的第二個 vhost 存在一些問題;返回 403 響應。

考慮到這只是同一站點的開發實例,我將所有內容從“siteweb”使用者複製到“sitedev”使用者(當然,正確設置了所有者/組),複製了虛擬主機配置並更正了路徑。

我現在不確定該怎麼做,所以如果有人能指出我正確的方向,那就太好了:)

相關的東西

vhost_website.conf——

ServerName website.com
ServerAlias www.website.com shop.website.com
DocumentRoot /home/siteweb/public_html
SuexecUserGroup siteweb siteweb

ScriptAlias /cgi-bin/ /home/siteweb/cgi-bin/
<Directory /home/siteweb/public_html>
   Options -Indexes IncludesNOEXEC FollowSymLinks +ExecCGI
   AddHandler php-fcgi .php
   Action php-fcgi /fcgi-bin/php.fcgi
   FCGIWrapper /home/siteweb/cgi-bin/php.fcgi .php
   Allow from All
   AllowOverride  All
</Directory>
<Directory /home/siteweb/cgi-bin>
 AllowOverride None
 Options ExecCGI
 Allow from all
</Directory>

/home/siteweb/cgi-bin/php.fcgi 有以下內容:

#!/bin/sh
export PHPRC=/home/siteweb/
export PHP_FCGI_MAX_REQUESTS=2000
exec /usr/bin/php-cgi

如前所述,我所做的只是在所有適用的地方將“siteweb”更改為“sitedev”,所以我對可能發生的事情有點茫然。任何日誌中都沒有任何用處,只有“權限被拒絕:訪問/被拒絕”

希望有人以前遇到過這個問題並且知道如何快速修復它,但是如果我可以提供任何其他相關資訊,請告訴我。

編輯開發站點 conf 文件,格式與上述相同: vhost_devsite.conf –

<VirtualHost *:80>
 ServerName devsite.website.com
 DocumentRoot /home/sitedev/public_html
 SuexecUserGroup sitedev sitedev

 ScriptAlias /cgi-bin/ /home/sitedev/cgi-bin/
 <Directory /home/sitedev/public_html>
   Options -Indexes IncludesNOEXEC FollowSymLinks +ExecCGI
   AddHandler php-fcgi .php
   Action php-fcgi /fcgi-bin/php.fcgi
   FCGIWrapper /home/sitedev/cgi-bin/php.fcgi .php
   Allow from All
   AllowOverride  All
 </Directory>
 <Directory /home/sitedev/cgi-bin>
   AllowOverride None
   Options ExecCGI
   Allow from all
 </Directory>
</VirtualHost>

檢查主目錄的權限是否正確,使用

ls -ld /home/sitedev

ls -ld /home/siteweb

引用自:https://serverfault.com/questions/285449