Hank Gay Asked: 2009-07-23 06:19:57 +0800 CST2009-07-23 06:19:57 +0800 CST 2009-07-23 06:19:57 +0800 CST CentOS 上的 Apache 可以在其文档根目录树之外放置一个 Subversion 存储库吗? 772 如果是这样,怎么做? 这与问题 43805有关。如果 repo 被正确chmod编辑但在文档根目录树之外,Apache 会抱怨它无法访问formatrepo 根目录中的文件。如果 repo 位于文档根目录树中的某个位置,则一切正常。 centos apache-2.2 svn selinux 2 个回答 Voted Best Answer Ophidian 2009-07-23T06:41:49+08:002009-07-23T06:41:49+08:00 当然有可能,我的设置与 David 类似(我的设置是 Centos 的默认设置): DocumentRoot /var/www/html/ 在我的/etc/httpd/conf.d/subversion.conf文件中包含以下内容(减去评论): LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn> DAV svn SVNParentPath /var/www/svn # Limit write permission to list of valid users. <LimitExcept GET PROPFIND OPTIONS REPORT> # Require SSL connection for password protection. # SSLRequireSSL AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/svn-auth-file Require valid-user </LimitExcept> </Location> 你有 SELinux 吗?您可能需要在 /var/www/svn 位置正确设置文件的上下文。 该sestatus命令将显示您是否处于强制模式。您可以(暂时)使用setenforce 0从 Enforcing 切换到 Permissive 并再次尝试查看是否是问题所在。 您希望格式文件的标签是system_u:object_r:httpd_sys_content_t:s0(用于ls -Z查看文件的 SELinux 标签)。您可以使用restorecon -R /var/www/svn. 有关 SELinux 的进一步阅读,请参阅Fedora SELinux 用户指南 David Pashley 2009-07-23T06:30:25+08:002009-07-23T06:30:25+08:00 这很好。您可以使用 SVNPath 或 SVNParentPath 选项设置路径。您确实应该将这些放在文档根目录之外,因为它们不应该以这种方式访问。 我们有: DocumentRoot /var/www/svn/ <Location /svn> SVNParentPath /var/svn DAV svn </Location>
当然有可能,我的设置与 David 类似(我的设置是 Centos 的默认设置):
在我的
/etc/httpd/conf.d/subversion.conf
文件中包含以下内容(减去评论):你有 SELinux 吗?您可能需要在 /var/www/svn 位置正确设置文件的上下文。
该
sestatus
命令将显示您是否处于强制模式。您可以(暂时)使用setenforce 0
从 Enforcing 切换到 Permissive 并再次尝试查看是否是问题所在。您希望格式文件的标签是
system_u:object_r:httpd_sys_content_t:s0
(用于ls -Z
查看文件的 SELinux 标签)。您可以使用restorecon -R /var/www/svn
.有关 SELinux 的进一步阅读,请参阅Fedora SELinux 用户指南
这很好。您可以使用 SVNPath 或 SVNParentPath 选项设置路径。您确实应该将这些放在文档根目录之外,因为它们不应该以这种方式访问。
我们有: