我把目录SVN 版本和svn-auth在/var/www
并且已经更改所有者并设置权限chown -R apache.apache /var/www/svn*
与chmod 600 -R /var/www/svn*
我的配置
svn.mydomain.com.conf
<VirtualHost 127.0.0.1:8080>
ServerName svn.mydomain.com
<Location />
DAV svn
SVNPath /var/www/svn/REPOSITORY_NAME
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /var/www/svn-auth/passwd
Require valid-user
</Location>
</VirtualHost>
一些修改httpd配置文件
Listen 8080
DocumentRoot "/var/www/"
<Directory "/var/www">
nginxsvn.mydomain.com.conf
server {
server_name svn.mydomain.com;
location / {
proxy_pass http://127.0.0.1:8080;
}
}
当尝试访问 svn.mydomain.com/project1 时我无法登录并收到此信息错误日志
[2013 年 2 月 1 日星期五 04:36:30] [错误] [客户端 127.0.0.1] (13)权限被拒绝:无法打开密码文件:/var/www/svn-auth/passwd [2013 年 2 月 1 日星期五 04:36:30] [错误] [客户端 127.0.0.1] 访问 /project1 失败,原因:未配置用户 ID“myuser”验证
我尝试使用AuthUserFile /etc/httpd/svn-auth/passwd
然后我可以登录但无法用此访问文件错误日志
[2013 年 2 月 1 日星期五 05:01:31] [错误] [客户端 127.0.0.1] (20014)内部错误:无法打开文件“/var/www/svn/REPOSITORY_NAME/format”:权限被拒绝 [2013 年 2 月 1 日星期五 05:01:31] [错误] [客户端 127.0.0.1] 无法获取资源信息。[500,#0] [2013 年 2 月 1 日星期五 05:01:31] [错误] [客户端 127.0.0.1] 无法打开请求的 SVN 文件系统 [500,#13] [2013 年 2 月 1 日星期五 05:01:31] [错误] [客户端 127.0.0.1] 无法打开请求的 SVN 文件系统 [500,#13] [2013 年 2 月 1 日星期五 05:01:32] [错误] [客户端 127.0.0.1] (20014)内部错误:无法打开文件“/var/www/svn/REPOSITORY_NAME/format”:权限被拒绝 [2013 年 2 月 1 日星期五 05:01:32] [错误] [客户端 127.0.0.1] 无法获取资源信息。[500,#0] [2013 年 2 月 1 日星期五 05:01:32] [错误] [客户端 127.0.0.1] 无法打开请求的 SVN 文件系统 [500,#13] [2013 年 2 月 1 日星期五 05:01:32] [错误] [客户端 127.0.0.1] 无法打开请求的 SVN 文件系统 [500,#13]
请帮忙!非常感谢。
答案1
将目录的 +x 权限设置为:
chmod 700 -R /var/www/svn*
这是因为目录是数据文件,其中包含每个文件的两条信息,即文件的名称和它的 inode 号。需要读取权限才能访问目录中文件的名称。如果您已经知道文件的名称,则需要执行权限才能访问目录中文件的 inode。
答案2
我解决了访问问题,在 www-data:www-data 上使用命令 chmod 和 own 以及 var 和 var www 以及其下的所有内容 (-R),给出 777,用网络浏览器测试,我可以探索存储库