0

同じサイトでsubversionとwikiをホストしようとしています。

/ etc / apache2/sitesに2つのファイルを作成しました-利用可能

「破壊」で

私は持っています

<VirtualHost -myserverIP-:80>
        ServerAdmin webmaster@localhost
        ServerName  svn.example.com
        DocumentRoot /var/svn/repos
        <Location /svn/repos>
                DAV svn
                SVNPath /var/svn/repos
      AuthType Basic
      AuthName "Subversion Repository"
      AuthUserFile /etc/apache2/passwords
      Require valid-user
        </Location>

</VirtualHost>

そして「ウィキ」で私は持っています

<VirtualHost -myserverIP-:80>
        ServerAdmin webmaster@localhost
        ServerName wiki
        ServerAlias -myserverIP-

        DocumentRoot /home/www/wiki/html
        <Directory /home/www/wiki/html>
                AllowOverride None
                Options -Indexes -MultiViews -SymLinksIfOwnerMatch +FollowSymLinks
                Order allow,deny
                allow from all
        </Directory>

        <Location /wiki>
        </Location>

        <DirectoryMatch "^/home/www/wiki/html/(data|conf|bin|inc)/">
            Order allow,deny
            Deny from all
            Satisfy All
        </DirectoryMatch>

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

        ErrorLog /home/www/wiki/logs/error.log
        CustomLog /home/www/wiki/logs/access.log combined


</VirtualHost>

ただし、サーバーのIPアドレスを参照すると、/ var / svn / reposディレクトリのコンテンツが表示されますが、wikiページが表示されたばかりの場合は、wikiインデックスページが表示されます。実際に-IPaddress-/svn / reposにアクセスしてSVNリポジトリを確認できますが、-IPaddress-/wikiが機能しません。

ヒントをありがとう

4

2 に答える 2

2

両方の仮想ホストが同じマシンのポート80にあります。Apacheは、どちらを使用するかを推測することしかできません。サブバージョンを推測し、指定されたDocumentRootを参照しています。仮想ホストを区別するか、IPではなくサーバー名を使用してサーバーを参照する必要があります。

代わりに、他の仮想ホスト内にSVNの場所を設定できます。

オペレーティングシステムに応じて、/ etc / apache2 / mods-available/dav_svn.confの使用も検討してください。

于 2012-09-20T20:22:33.163 に答える
0

ただし、サーバーのIPアドレスを参照すると、/ var / svn / reposディレクトリのコンテンツが表示されますが、wikiページが表示されたばかりの場合は、wikiインデックスページが表示されます。実際に-IPaddress-/svn / reposにアクセスしてSVNリポジトリを確認できますが、-IPaddress-/wikiが機能しません。

apacheにリクエストを送信し、使用しているホスト名がいずれのvhostによっても定義されていないServerName場合、apacheはデフォルトServerAliasのvhostを返します。これは、常にファイル(またはファイル内の最初のvhost)です。最小の語彙順序、例えば)。あなたの場合、SVN vhostが最初であるため、これが「デフォルト」のvhostです。2つをもう一方の周りに交換すると、「デフォルト」の仮想ホストになります。00-default_vhosts.conf

于 2012-09-20T20:35:01.943 に答える