いくつかの変更を加えた後、WebサーバーのSVNが壊れたようです。 1つのHTTPS仮想ホストの一部として構成されており、普遍的にアクセスすることはできません。私のSVNクライアントは「(リポジトリ)へのアクセスは禁止されています」というエラーを出しますが、Webインターフェイス(SVNListParentPathがオン)を経由すると、同じURLを使用してすべてが正しく機能します。ブラウザからファイルにアクセスすることもできます。クライアントを使用すると、SVNリポジトリが「/ home/svn」の下にあるときに、Apacheログがクライアントが「/ var/www/mysite/svn」にアクセスしようとしていることを示していることに気付きます。 Elinksを使用したトラブルシューティング時にリダイレクトページを1回取得したので、これは、サーバーがSVNクライアントで失敗するある種のリダイレクトを使用していることを意味しますか?サイトの残りの部分はSSLを介して適切に機能しますが、機能しないのはSVNだけです。ありがとう。
このサイトのApache構成は次のとおりです。
#mydomain.co.uk
NameVirtualHost *:443
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName mydomain.co.uk
DocumentRoot /var/www/mydomain
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/mydomain>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory /usr/share/ampache>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_Host}%{REQUEST_URI}
</Directory>
<Directory /var/www/mydomain/opendocman>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_Host}%{REQUEST_URI}
</Directory>
<Directory /var/www/mydomain/44kg>
Options Indexes FollowSymLinks MultiViews
Order deny,allow
Deny from all
Allow from 192.168.1
</Directory>
<Directory /var/www/mydomain/69td>
Options Indexes FollowSymLinks MultiViews
Order deny,allow
Deny from all
Allow from 192.168.1 127.0.0.1 localhost
SCGIHandler on
SCGIServer 127.0.0.1:5000
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorDocument 404 /fourohfour.html
ErrorLog /var/log/Apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/Apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName mydomain.co.uk
DocumentRoot /var/www/mydomain/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/mydomain/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory /var/www/mydomain/44kg>
Order deny,allow
Deny from all
</Directory>
<Location /svn>
DAV svn
SVNParentPath /home/svn
SVNListParentPath on
AuthType Basic
AuthName "Excalibur SVN Repository"
AuthUserFile /etc/Apache2/dav_svn.passwd
Require valid-user
</Location>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/Apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/Apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
SSLEngine on
SSLCertificateFile /etc/ssl/certs/QPR/qpr.pem
SSLCertificateKeyFile /etc/ssl/certs/QPR/ca.key
</VirtualHost>
#SquirrelMail
<VirtualHost *:443>
ServerName webmail.mydomain.co.uk
DocumentRoot /usr/share/squirrelmail
SSLEngine on
SSLCertificateFile /etc/ssl/certs/QPR/qpr.pem
SSLCertificateKeyFile /etc/ssl/certs/QPR/ca.key
</VirtualHost>
最後に機能したのはウェブメールを追加する前でしたが、それを無効にしてもSVNは元に戻りません。私は実際にリダイレクトページを見ることができませんでした-それが起こる前にそれが302リダイレクトであったことを見つけるのにちょうど十分な時間を与えました、そして私はそれを再現することができませんでした。ブラウザを介して、すべてのリポジトリは https://mydomain.co.uk/svn/(repository) で利用できますが、クライアントで同じURLを使用すると、SVNCLIとDreamweaverの両方でこのエラーが発生します。 :
Pegasus:Uni Gargravarr$ svn update
svn: access to '/svn/Uni' forbidden
とった。
最近Apacheに「mod-evasive」をインストールしたことを完全に忘れました。これを無効にすると、SVNが即座にバックアップされます。 Debianにはmod-evasiveとmod-dav-svnの既知のバグがあることが判明しました。ここでのこの質問とまったく同じです:
Apache svnサーバーの問題(403禁止)
愚かなことに、私も投稿する前にこの質問を読みました。私は最後の投稿をスキップしたと思います。
TL; DR:Mod-evasiveとApache2/SVNはうまくいきません:)