SVNおよびapache2構成パスエラー

SVNおよびapache2構成パスエラー

svnはhttpsを介してapache2設定しました()。大丈夫かもしれませsvn checkoutんが、提出に失敗しました。サーバーがコミットを実行するリポジトリの間違った場所を探しているapache2ことをログに表示できます。svnこれは私のapache2443.example.com.confファイルです。

<IfModule mod_ssl.c>
    <virtualhost *:443>
    # requests to https://example.com land here
    ServerName example.com
    DocumentRoot /home/me/svn-repos

    # global properties for all directories in this site
    <Location />
        # do not use .htaccess files
        allowoverride none
        #DirectoryIndex index.html
        #require all granted                                                                                    

        DAV svn
        SVNParentPath /home/me/svn-repos
        AuthType Basic
        AuthName "svn repositories"
        AuthUserFile blah.passwd
        #<LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
        #</LimitExcept>
    </Location>

    SSLEngine On
    SSLCertificateFile blah
    SSLCertificateKeyFile blah

    <FilesMatch "\.(cgi|shtml|phtml|php)$">
            SSLOptions +StdEnvVars
    </FilesMatch>

    ErrorDocument 400 /index.html
    ErrorDocument 401 /index.html
    # lots more ErrorDocument entries

    </virtualhost>
</IfModule>

私のすべてのリポジトリは(例えばetc.)の下のディレクトリにsvnあります。/home/me/svn-repos/home/me/svn-repos/repo1/home/me/svn-repos/repo2

だから私のリポジトリの1つの最新のローカルコピーを見ました。

$ cd /tmp
$ svn co --username me https://example.com/repo1 repo1
Authentication realm: <https://example.com:443> svn repositories
Password for 'me': ***

A repo1/file1.txt
Checked out revision 1.

今まではそんなに良くなった。しかし、提出しようとすると:

$ touch file2.txt
$ svn add file2.txt
A     file2.txt
$ svn ci file2.txt -m added
Authentication realm: <https://example.com:443> svn repositories
Password for 'me': ***

Adding         file2.txt
svn: E175009: Commit failed (details follow):
svn: E175009: The XML response contains invalid XML
svn: E130003: Malformed XML: no element found

apache2エラーログから、svnサーバーが間違った場所でリポジトリを探していることがわかります。

$ sudo tail -4 /var/log/apache2/error.log
[Sat Dec 02 20:23:29.626227 2017] [:error] [pid 123] (20014)Internal error (specific information not available): [client x.x.x.x:x] Can't open file '/home/me/svn-repos/index.html/format': Not a directory
[Sat Dec 02 20:23:29.626264 2017] [dav:error] [pid 123] [client x.x.x.x:x] Could not fetch resource information.  [404, #0]
[Sat Dec 02 20:23:29.626272 2017] [dav:error] [pid 123] [client x.x.x.x:x] Could not find the requested SVN filesystem  [404, #20]
[Sat Dec 02 20:23:29.626277 2017] [dav:error] [pid 123] [client x.x.x.x:x] Could not find the requested SVN filesystem  [404, #20]

探しているファイルはありますが、/home/me/svn-repos/repo1/formatファイルを見つけるための正しいパスを追加しません。私はこれが443.example.com.confファイルに何かを追加する必要があることを意味すると思いますapache2が、何がわかりません。

修正する

443.example.com.confファイルを次のように変更しました。

# ErrorDocument 404 /index.html
ErrorDocument 404 /indexyz.html

今すぐコミットしようとすると、エラーメッセージは次のように変更されます。

[Sat Dec 02 20:39:00.153942 2017] [:error] [pid 123] (20014)Internal error (specific information not available): [client 192.168.1.177:50228] Can't open file '/home/me/svn-repos/indexyz.html/format': No such file or directory
[Sat Dec 02 20:39:00.153979 2017] [dav:error] [pid 123] [client x.x.x.x:x] Could not fetch resource information.  [404, #0]
[Sat Dec 02 20:39:00.153987 2017] [dav:error] [pid 123] [client x.x.x.x:x] Could not find the requested SVN filesystem  [404, #2]
[Sat Dec 02 20:39:00.153992 2017] [dav:error] [pid 123] [client x.x.x.x:x] Could not find the requested SVN filesystem  [404, #2]

しかし、まだあまり役に立ちません。

ベストアンサー1

  1. あなたは可能なすべての間違いを犯しました(3/3)
  2. あなたはSVNの本を読んでいません

問題を解決してください:

  • 買戻契約必然ではないhttpツリー内に位置
  • SVNの位置必然ではないhttp-hostのルートディレクトリにあります
  • SVNの位置必然ではないhttp-host内の物理パスにあり、論理パスのみ

おすすめ記事