Ubuntu

Forbidden 你沒有權限訪問 /cgi-bin/mailman/

  • January 22, 2015

我剛剛從 Ubuntu 伺服器升級到 14.0.4 LTS,我無法再通過 Web 界面訪問 Mailman。我收到 403 禁止錯誤(禁止:您無權訪問 /cgi-bin/mailman/)。我已經檢查了幾次 apache 配置,但沒有發現問題。

我正在執行 Apache 2.4.7 和 Mailman 2.1.16。這是我的 /etc/mailman/apache2.conf 中的配置。我不知道在哪裡可以看到這一點。會不會是虛擬主機問題?

# Logos:
Alias /images/mailman/ /usr/share/images/mailman/

# Use this if you don't want the "cgi-bin" component in your URL:
# In case you want to access mailman through a shorter URL you should enable
# this:
#ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
# In this case you need to set the DEFAULT_URL_PATTERN in
# /etc/mailman/mm_cfg.py to http://%s/mailman/ for the cookie
# authentication code to work.  Note that you need to change the base
# URL for all the already-created lists as well.

<Directory /usr/lib/cgi-bin/mailman/>
   AllowOverride all
   Options +ExecCGI
   AddHandler cgi-script .cgi index.cgi
   Order allow,deny
   Allow from all
</Directory>
<Directory /var/lib/mailman/archives/public/>
   Options +FollowSymlinks
   AllowOverride all
   Order allow,deny
   Allow from all
</Directory>
<Directory /usr/share/images/mailman/>
   AllowOverride all
   Order allow,deny
   Allow from all
</Directory>

不,這肯定不是虛擬主機問題。

(1)

不僅如果您的 apache 配置不允許這些目錄,而且*即使 apache 沒有訪問此目錄的權限,*您也會收到 403 錯誤。

要知道這一點,您可以很容易地測試:只需su對 apache 使用者su www-data -c /bin/bash

(2)

無論如何,通常error.logapache 的大部分都包含相對清晰和不穩定的推理,為什麼這樣的請求是不可服務的。

(3)

接下來,可能會發生什麼:您可以停止 apache,然後使用 strace 重新啟動。所以:

strace -s 200 -f -o trace.txt apachectl start

這會很慢,但您會獲得非常詳細的登錄資訊trace.txt,您可以在其中找到問題所在。不幸的是,這整個技巧對你來說可能非常神秘。

(4)可能的解決方案:

在 apache 2.2 和 2.4 之間,配置文件語法發生了一些變化。您的 ubuntu 升級可能升級了 apache,但沒有更改配置。閱讀本文以獲得更詳細的答案:https ://httpd.apache.org/docs/2.4/upgrading.html#access 。

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