私は このsvnインストールガイド に従っていて、_http://localhost/repos
_にアクセスしてテストリポジトリにアクセスしようとすると、認証は成功しますが、次のようになります。
_"Forbidden You don't have permission to access /repos on this server"
_
これが私のSubversion.confファイルです。
_LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /repos>
DAV svn
SVNParentPath /var/www/svn/repos
#
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "Subversion repos"
AuthUserFile /etc/svn-auth-conf
Require valid-user
# </LimitExcept>
</Location>
_
私のパスは/ var/www/svn/reposで、ここに私の権限があります
_[root@localhost svn]# ls -la repos/
total 32
drwxr-xr-x. 6 Apache apache 4096 Aug 24 11:42 .
drwxr-xr-x. 3 root root 4096 Aug 24 11:42 ..
drwxr-xr-x. 2 Apache apache 4096 Aug 24 13:50 conf
drwxr-sr-x. 6 Apache apache 4096 Aug 24 11:42 db
-rwxr-xr-x. 1 Apache apache 2 Aug 24 11:42 format
drwxr-xr-x. 2 Apache apache 4096 Aug 24 11:42 hooks
drwxr-xr-x. 2 Apache apache 4096 Aug 24 11:42 locks
-rwxr-xr-x. 1 Apache apache 229 Aug 24 11:42 README.txt
_
Localhost/repos/README.TXTにアクセスすると、このメッセージが表示されます。
_<D:error><C:error/><m:human-readable errcode="20">
Could not open the requested SVN filesystem
</m:human-readable></D:error>
_
他のファイル名は_errcode ="2"
_を代わりに与えます。
selinuxはpermissiveに設定されています。var/ www/html/index.htmlにあるlocalhost/index.htmlファイルが問題なく表示されます。
似たような問題のあるいくつかのフォーラムの投稿を読みましたが、役に立ちませんでした。
任意のアイデアをいただければ幸いです!
編集1:
Subversion.confファイルを編集して_SVNParentPath /var/www/svn/repos
_を_SVNParentPath /var/www/svn
_に変更しましたが、効果がないようです。
編集2:
brain99はそれを釘付けにしました。 _Location />
_に変更すると問題が修正され、_repos - Revision 0: /
_が表示されます
Powered by Subversion version 1.6.11 (r934486).
SVNPathとSVNParentPathディレクティブを混同しているようです。
あなたが投稿したものから、/var/www/svn/repos
には単一のリポジトリが含まれています。この場合は、
SVNPath /var/www/svn/repos
複数のリポジトリがある場合のみ、SVNParentPathを使用する必要があります。個々のリポジトリは、ここで設定するディレクトリのサブフォルダに配置する必要があります。
だからそれを親ディレクトリに設定する:
SVNParentPath /var/www/svn
または、設定をそのままにして、現在のリポジトリをサブディレクトリに移動します。/var/www/svn/repos/myRepo
Mod_dav_svnの使用の詳細については、mod_dav_svnの SVN Bookセクションを確認してください
最初に、ディレクトリSVNParentPath/var/www/svn/reposが存在することを確認します。次に、サブディレクトリはありますか?彼自身のデータベースを備えたリポジトリdirectorがあるはずです。ディレクトリが空であるか、サブディレクトリがない場合は、svnadminコマンド(マニュアルを呼び出す)を使用してリポジトリを作成します。作成後も問題はありますか?次に、すべてのディレクティブAUTH *をコメント化し、Apacheを要求して再起動します。アクセスは匿名になりますが、確認するか、認証に問題があるかどうかは問題ではありません。アクセスが可能な場合、認証が問題になります。これを構成する必要があります。 Apache manを読み、基本的な認証のためにAuthUserFile/etc/svn-auth-confを管理する方法を学ぶ必要があります。問題が(コメントアウトされたauthで)まだ存在する場合、問題はファイルのアクセス権にあります。 Apacheサーバーが使用するユーザー名への読み取り/書き込みアクセスを構成します。 ps auxwwは、そのユーザーが何であるかを伝えます。/etc/passwdファイルから取得するグループ番号。/etc/groupファイルから取得するグループ名。この後、チェックアウト/更新およびコミットできるようになると、認証の問題を解決できます。たくさんのレシピがあります。 「svn create my first repository」という質問をグーグルに入力したところ、多くの回答を得ました。最初の例は次のとおりです。 http://queens.db.toronto.edu/~nilesh/linux/Subversion-howto/ これを試してください:)
ところで。 centosはredhatのようなLinuxディストリビューションです。 /etc/init.d/httpd start/stopでApacheを再起動できます。/etc/Apacheまたは/ etc/httpdファイルに何を書き込んでいるかを調べます(LinuxディストリビューションとデフォルトのApache構成に依存)。