Por que o apache bloqueia o viewvc (erro 403) com o erro “client denied by server configuration”?

0

Não consigo ver o viewvc funcionando no Ubuntu 16.04. (A mesma configuração funcionou no Ubuntu 15.10.) A mensagem de erro em /var/log/apache2/error.log é:

[authz_core:error] [pid 24296]
 [client 192.168.1.34:37586] AH01630: client denied by server configuration:
 /usr/lib/cgi-bin/viewvc.cgi

Aqui está o que eu fiz. Eu instalei o pacote:

sudo apt install viewvc

configurado /etc/viewvc/viewvc.conf :

[general]
root_parents = /data/svnrepo : svn

[options]
root_as_url_component = 1
allowed_views = annotate, diff, markup, roots, co
template_dir = /etc/viewvc/templates

configure um host virtual Apache:

<VirtualHost *:80>
    ServerAdmin smith@localhost
    ServerName svn.example.com
    Alias /docroot /usr/share/viewvc/docroot
    ScriptAlias / /usr/lib/cgi-bin/viewvc.cgi/

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

    <Directory /usr/lib/cgi-bin/viewvc.cgi/>
     Require all granted
    </Directory>

    <Directory /usr/share/viewvc/docroot>
     Require all granted
    </Directory>
</VirtualHost>

habilitado e reiniciado apache (sem erros):

sudo a2ensite svn.example.com.conf
sudo service apache2 restart

mas sempre que eu clico em svn.example.com, recebo este erro:

Sun Sep 25 14:25:24.430254 2016] [authz_core:error] [pid 24296]
 [client 192.168.1.34:37586] AH01630: client denied by server configuration:
 /usr/lib/cgi-bin/viewvc.cgi, referer: http://svn.example.com/

Eu já tentei (sem resolver o problema):

  • Instalando o libapache2-svn
  • Excluindo todas as diretivas AllowOverride e Require de /etc/apache2/apache2.conf
  • Usando a sintaxe do Apache 2.2 ( Order allow, deny , Allow from all )
  • Adicionando Options FollowSymLinks e ExecCGI
  • AddHandler cgi-script cgi
  • iptables -F
  • O conselho sobre this page

Alguma sugestão apreciada!

    
por DanB 25.09.2016 / 20:51

1 resposta

0

O problema é que o módulo CGI não está habilitado , então o% O comandoScriptAlias não estava funcionando. A solução foi:

$ sudo a2enmod cgi
$ sudo service apache2 restart

e atualize o navegador.

Também consegui simplificar a configuração do Apache removendo as <Directory> parts:

<VirtualHost *:80>
    ServerAdmin smith@localhost
    ServerName svn.example.com
    Alias /docroot /usr/share/viewvc/docroot
    ScriptAlias / /usr/lib/cgi-bin/viewvc.cgi/

    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Graças a C. Michael Pilato por ajudar a me apontar na direção certa.

    
por DanB 27.09.2016 / 14:17