2013-08-27 2 views
8

は私に「svn:E195019:リダイレクトサイクルでURLが検出されました」の原因は何ですか?私はいくつかの(特定の)プロキシサーバーの背後だとき、このエラーが発生しただけであるかのように私のSVNのレポからチェックアウトしようと

 
    svn: E195019: Redirect cycle detected for URL ... 

を与えるしかし、それが表示されます。

他の記事(tortoise svn giving me "Redirect cycle detected for URL 'domain/svn'"参照)で説明したように、SVN DAVが誤って構成されている場合、たとえばSVNParentPathを使用してSVNPathを使用する場合などに、このエラーが発生します。しかし、私の構成は正しいと思われます。私が知る限り、この問題はプロキシの背後にある場合にのみ発生します。

リポジトリのセットアップは、例えば、

 
    ServerAlias svn.mydomain.com 
    <Location /myrepo> 
     DAV svn 
     SVNPath /var/www/vhosts/mydomain.com/svn/myrepo 
     AuthType Basic 
     AuthName "mydomain svn" 
     AuthUserFile /var/www/vhosts/svn.mydomain.com/conf/htpasswd-myproject 
     # Allow read-only access to anyone, otherwise require 
     # require authentication 
      Require valid-user 
    </Location> 

答えて

12

(私は解決策を検索するための半分週末を使用した後に、自分の質問への答えを与えられた)、多かれ少なかれ標準である:

このエラーメッセージは、サブバージョンリポジトリがディレクトリsvn/myrepoにあり、ディレクトリsvnがサブドメインsvn.mydomain.comのDocumentRootとしてもリストされているという事実に関連しているようです。そのDocumentRootディレクティブは私には分かりませんでした。なぜなら、サブドメインのドキュメントルートは別のconfファイルで構成されていたからです(私はPleskを使ってサーバを管理しています)。 これは何らかの曖昧さを作り出しました。サブドメインのドキュメントルートを別の場所に移動すると、エラーメッセージが表示されなくなりました。

ため、問題は、追跡するのが難しかった - レポは、サブドメインのトップレベルに配置されている場合、エラーが表示されません

  • <Location />SVNPath /var/www/vhosts/mydomain.com/svn、すなわち、 - 私の知る限りでは上記の構成。

  • エラーは、プロキシ経由でリポジトリにアクセスする場合にのみ表示されます。

  • DocumentRootとの衝突は、それがサブドメインであったためあまり明らかではありませんでした。

だから、要約する:ソリューションを(Pleskの使用時):何か別の形SVNディレクトリにPleskの設定(GUI)でサブドメインの「DocumentRootのを」変更します。 www.mydomain.comの "DocumentRoot"はhttpdocsです。 svn.mydomain.comの "DocumentRoot"は(デフォルトで)svnでした。私はそれをhttpdocs-svnに変更し、問題はなくなった。フォルダhttpdocs-svnは、セットアップでは使用されません。なぜなら、svn.mydomain.comより下のものはすべてDavSVNによって処理されるからです。

+0

このエラーメッセージが表示されていますが、その解決策ではありません。私はバニラSubversionとlibapache2-svnを持つバニラApache2をインストールして実行しています。SVNParentPathを使用して/ var/lib/svnに2つのreposを作成し、ブラウザでブラウズできます(これまでのところ空ですが) 。しかし、コマンドラインから同じURI http:// localhost/svn/fooにインポートまたはチェックアウトしようとすると、リダイレクトサイクルについてこのエラーが発生します。/etc/apache2の下にある任意のファイルのどこにでもリダイレクト指示がありませんので、どこから来ますか?これはデフォルトインストールなので、手動で編集する必要はありません。 –

+0

これまで私はこの問題を抱えていましたが、明示的なリダイレクトは必要ありません。SVNルートディレクトリとWebページ(Apache)ルートディレクトリが同じ場合は、デフォルトのインストールで発生する可能性があります。 - しかし:同じエラーメッセージをもたらす他の設定があるかどうかは分かりません。 –

+0

リダイレクトではなく別名であることが判明しました。それは偽の別名/ svn/var/lib/svnが含まれているため、あなたがそれをコメントアウトする必要があるため、いくつかの根拠のない理由のためにlibapache2-svn(私は思う)によってインストールされたデフォルトのdav_svn.confは壊れています。それからすべてが動く。なぜこれが出荷されたのか分からない。 –

0

問題は、チェックアウト時に指定したSVN URLに問題があります。私はこの問題のためにさまざまな投稿をチェックしましたが、どれも私のために働いていませんでした。以下は私のために働いた非常に簡単な解決策です

あなたは、 'http://localhost:3343/csvn/repo/list 'リンクを使用してcsvnリポジトリにアクセスし、アクセスしたいリポジトリの 'Checkoutコマンド'のURLをコピーする必要があります。

このURLは、チェックアウトのために亀のSVNクライアントで使用する必要があります。

5

使用しているリンクが「表示」リンクではなく「svn」であることを確認してください。

すなわちwww.myrepo.com/svn/myproject/trunk ||正しい
www.myrepo.com/view/myproject/trunk ||動作するはず間違った

+0

私はこれが不当に降格されたと思います。私はチェックアウトviewvcのWebビューのURLをしようとしている間、まったく同じエラーメッセージが表示されます。例http://svn.apache.org/viewvc/ant/sandbox/またはhttp://svn.apache.org/viewvc/axis/axis1/java/trunk – thoredge

+0

これは私の問題を正確に解決しました – SK176H

関連する問題