3

共有ホスティング Linux アカウントで実行されている apache svn サーバーがあります。

症状は、PuTTY を使用して svn をホストしているサーバーに正常に接続できるが、TortoiseSVN リポジトリ ブラウザが接続できないことです。

私はsvn、svn + ssh、

svn だけを試してみると、次のようになります。

E730060: Unable to connect to a repository at URL 'svn://50.97.138.99:36901 /test' svn: E730060: Can't connect to host '50.97.138.99': 接続先が正しくないため、接続に失敗しました一定時間後に応答するか、接続されたホストが応答しなかったために確立された接続が失敗しました。

svn+ssh を試すと、パスワードの入力を繰り返し求められ、pwd ダイアログを数回キャンセルしなければならなくなり、エラーは次のようになります。

URL 'svn+ssh://wren.arvixe.com' のリポジトリに接続できない 接続の問題をより適切にデバッグするには、Subversion 構成ファイルの [tunnels] セクションで ssh から -q オプションを削除します。ネットワーク接続が予期せず閉じられました

私は今、この 2 日間に取り組んでいて、心をググってみましたが、気が狂い始めています。

助けてくれてありがとう。詳細を提供したり、実験を行ったり、などを喜んで提供します。誰もがどのような詳細を開始したいかわからなかったので、最初に十分な詳細がなかった場合は申し訳ありません。

4

1 に答える 1

3

リポジトリへのアクセス方法について混乱が生じているようです。svn+ssh://誰かが設定しないと、単純に閲覧することはできません。誰かがこれを設定しましたか?

共有ホスティングサーバーであるため、SSH経由で(PuTTYを使用して)サーバーにログオンできることに驚いています。通常、これは許可されていません。ほとんどの共有ホスティングサイトはシェルアクセスを許可していません。

冒頭陳述でapachesvnserverについて言及しています。次に、との両方を試してsvn://くださいsvn+ssh://。SubversionサーバーをセットアップしてSubversionにアクセスするには、次の4つの方法があります。

  • サーバーとしてApachehttpdを使用します。これを行うには、Apachehttpdを正しく設定およびコンパイルする必要があります。やなどのApacheプラグインがいくつか必要です。この設定はありますか?その場合は、表示されているとおりにではなく、を使用してリポジトリにアクセスする必要があります。mod_dav_svn.somod_dav.sohttp://svn://
  • svnserveサーバーとして使用します。これはセットアップが簡単です。あなたが示すようにあなたはあなたのリポジトリにアクセスしますsvn://。誰かが設定svnserveして実行しましたか?
  • sshではなくsvnserveを使用します。これはを使用しますが、Unixファイルアクセスとsvnserve統合して使用できます。sshこれはセットアップが非常に難しいので、実際にこれを使用している人はほとんどいません。各ユーザーは、リポジトリにアクセスすると、独自のsvnserveプロセスを開始します。リポジトリはリポジトリに直接アクセスできるため、シェルアクセスを防ぐために個々のアカウントを設定する必要があります。そうしないと、ユーザーはリポジトリを直接操作できます。
  • 直接ファイルアクセスを使用するリポジトリを共有する場合、これは強くお勧めしません。すべてのユーザーにリポジトリへの直接読み取り/書き込みアクセスを許可する必要があるためです。

問題は、Subversionがシステムでどのように設定されているかを知らなければ、あなたを助けることが不可能になることです。リポジトリを作成しましたか?もしそうなら、あなたはsvnserveそれにアクセスするためのプロセスを開始しましたか?他の誰かがそのシステムにSubversionリポジトリをセットアップしましたか?他の誰かがリポジトリを設定した場合、そのリポジトリにアクセスする方法について、その人から正確な指示を取得する必要があります。

あなたがリポジトリをセットアップした人なら、Apacheをセットアップしましたか、それともsvnserveをセットアップしましたか?セットアップsvnserveした場合、デフォルトのポート3690を使用しましたか、それとも使用する別のポートをセットアップしましたか?このポートがファイアウォールによってブロックされているかどうかを判断できますか?このコマンドを使用してtelenet、ポートに直接アクセスしてみることができます。

C> telnet 50.97.138.99 3690

接続できない場合は、「リモートホストに接続できません」というメッセージが表示されますsvnserve。これは、実行されていないか、ファイアウォールがそのポートをブロックしていることを意味します。サーバーにログインできるので、サーバーにログインして、そのリポジトリに直接アクセスしてみてください。

$ svn log svn:// localhost

リポジトリにアクセスできる場合は、svnserveが実行されていますが、ファイアウォールがそれをブロックしています。アクセスできない場合svnserveは、実行されていない可能性があります。

それを試して、何が得られるかを確認してください。

于 2012-08-06T03:13:35.860 に答える