为 SVN 配置 httpd.conf

为 SVN 配置 httpd.conf

我需要在 centos 6.4 (最终版) 上配置 svn。我安装了 svn 1.6 并完成了初始配置,但在通过 url 访问存储库时,我得到的是 svn conf 文件/文件夹列表,而不是提示进行身份验证。(截屏

答案1

我建议直接从安装万迪斯科无需升级 SQLite 即可更新存储库

您必须在 vhost 配置中启用 dav

<VirtualHost *:80>

ServerName svn.example.net
DocumentRoot /vhosts/svn.example.net

<Directory /vhosts/svn.example.net>
    DirectoryIndex index.html
    AllowOverride None
</Directory>

<Location />
    AuthType Basic
    AuthName "SVN Repository. Authorization required."
    AuthUserFile /etc/svn/svn_users
    Require valid-user
</Location>

<Location /Test>
    DAV svn
    SVNPath /svn/Test
    AuthzSVNAccessFile /etc/svn/test.conf
    SVNReposName "Test SVN Repository"
</Location>
</VirtualHost>

之后创建 repo

# svnadmin create /svn/Test
# chown -R apache:apache /svn/Test

答案2

最后我让它工作了:) 我做了以下事情

添加

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

httpd配置文件

从 /usr/lib64/httpd/modules复制mod_dav_svn.so and mod_authz_svn.so到 /etc/httpd/modules

cp /usr/lib64/httpd/modules/mod_dav_svn.so /etc/httpd/modules/
cp /usr/lib64/httpd/modules/mod_authz_svn.so /etc/httpd/modules/

在以下位置添加了以下内容httpd-vhosts.conf

<VirtualHost myipaddress:80>
ServerName myipaddress
DocumentRoot /var/www

<Directory /var/www>
    DirectoryIndex index.html index.php
    AllowOverride None
</Directory>
<Location /svn/TestRepo>
  DAV svn
  SVNPath /var/www/svn/TestRepo
  AuthType Basic
  AuthName "My project"
  SVNPathAuthz on
  AuthUserFile /etc/svn-auth.htpasswd
  AuthzSVNAccessFile /svn/authz.conf
  Order deny,allow
  Require valid-user
</Location>
</VirtualHost>

谢谢ALex_hha帮助我找出问题的真正原因。:)

相关内容