Proibido Você não tem permissão para acessar / cgi-bin / mailman /

3

Acabei de atualizar do servidor Ubuntu para o 14.0.4 LTS e não consigo mais acessar o Mailman através da interface web. Eu recebo um erro 403 proibido (Proibido: Você não tem permissão para acessar / cgi-bin / mailman /). Já passei pela configuração do apache algumas vezes e não vejo o problema.

Estou executando o Apache 2.4.7 e o Mailman 2.1.16. Aqui está a configuração no meu /etc/mailman/apache2.conf. Eu não tenho certeza onde mais olhar neste momento. Poderia ser um problema de host virtual?

# 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>
    
por user2643864 22.01.2015 / 09:58

1 resposta

3

Não, certamente não é um problema de virtualhost.

(1)

Você obtém erro 403 não apenas se as configurações do seu apache não são permitidas, mas se o apache não tiver permissão para acessar este diretório .

Para saber isso, você pode facilmente testar isso: basta su para o usuário do apache ( su www-data -c /bin/bash ), e tentar entrar no diretório nomeado, listá-lo, ler arquivos dele, etc., assim como o apache fez o seu pedido.

(2)

De qualquer forma, normalmente, o error.log do apache contém principalmente um raciocínio relativamente claro e compreensível, por que uma solicitação desse tipo não foi reparável.

(3)

Próximo a isso, o que poderia ser: você poderia parar o apache e depois reiniciar com um strace. Então:

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

Ele será lento, mas você obterá um log detalhado muito em trace.txt , onde você poderá descobrir qual era exatamente o problema. Infelizmente, todo esse truque é provavelmente muito enigmático para você.

(4) A solução provável:

Entre o apache 2.2 e 2.4, a sintaxe do arquivo de configuração mudou um pouco. Sua atualização do ubuntu provavelmente atualizou o apache, mas não alterou a configuração. Leia isto para obter uma resposta mais detalhada: link .

    
por 22.01.2015 / 10:13