web-dev-qa-db-ja.com

SVNSSL用にApacheを構成する

Apacheの設定、特にSVN DAVmodとの相互作用に問題があります。

私ができるようにしたいのは、domain.comが私のWebサイトを指し、svn.domain.comが私のsvnディレクトリ(現在は私のpublic_htmlディレクトリの外にある)を指し、両方がhttps経由でアクセスできるようにすることです。

ほとんどの部分で機能していますが、svnサブドメインに明示的なVirtualHostを設定すると、svnアプリケーションがリポジトリにアクセスできなくなります(代わりに、「リポジトリが永続的に移動されます」 「エラー)、リポジトリを参照できます。

私の設定は次のようになります:

<VirtualHost *:443>
    ServerName domain.com
    ServerAlias www.domain.com svn.domain.com
    DocumentRoot /path/to/website/dir
    ...
    #stuff for SSL cert etc.
</VirtualHost>

<VirtualHost *:80>
    ServerName domain.com
    ServerAlias www.domain.com
    DocumentRoot /path/to/website/dir
    ...
</VirtualHost>

<Location /repo>
    DAV svn
    SVNPath /path/to/repos
    ... #auth details
</Location>

これはほとんど機能しますが、svn.domain.comを参照すると私のウェブサイトが表示され、domain.com/repoを参照するとリポジトリが表示されます(svn.domain.com/repoは正常に機能し、domain.comも正常に機能します)。 domain.com/repoに、私のプロジェクトやドキュメントなどに関する一連のWebページを表示させたい場合は、svn.domain.comは、理想的には、何もないか、使用可能なリポジトリのリストか、別のページか何かを指します。私はApache設定ファイルのコツをつかんだと思っていましたが、これは私を困惑させています!

1
MalphasWats

<VirtualHost>ドメインとsvn.domain.comドメインには別々のdomain.com / www.domain.comディレクティブが必要です。両方を最初の<VirtualHost>に押し込もうとしているようです。それらを分離した後、SVNディレクティブをsvn.domain.comホスト内に配置します。

2
Kamil Kisiel