Svn 获取Subversion的问题+;阿帕奇开始工作了
按照中的说明,我一直在尝试在我的站点上设置Subversion,使用Apache而不是SVN服务。设置好所有内容后,我将在/srv/svn/myrepository上创建一个存储库,可从code.mydomain.com访问该存储库 但是,按照上面链接的指南中的所有说明进行操作后,访问code.mydomain.com将显示Apache默认站点/var/www(即“它工作!”)的内容。这还会在我的Apache日志中生成以下错误:Svn 获取Subversion的问题+;阿帕奇开始工作了,svn,apache,mod-dav-svn,Svn,Apache,Mod Dav Svn,按照中的说明,我一直在尝试在我的站点上设置Subversion,使用Apache而不是SVN服务。设置好所有内容后,我将在/srv/svn/myrepository上创建一个存储库,可从code.mydomain.com访问该存储库 但是,按照上面链接的指南中的所有说明进行操作后,访问code.mydomain.com将显示Apache默认站点/var/www(即“它工作!”)的内容。这还会在我的Apache日志中生成以下错误: [Sat Nov 06 10:11:33 2010] [notic
[Sat Nov 06 10:11:33 2010] [notice] caught SIGTERM, shutting down
[Sat Nov 06 10:11:34 2010] [notice] mod_python: Creating 8 session mutexes based on 150 max processes and 0 max threads.
[Sat Nov 06 10:11:34 2010] [notice] mod_python: using mutex_directory /tmp
[Sat Nov 06 10:11:34 2010] [notice] Apache/2.2.9 (Debian) DAV/2 SVN/1.5.1 mod_jk/1.2.26 PHP/5.2.6-1+lenny9 with Suhosin-Patch mod_python/3.3.1 Python/2.5.2 configured -- resuming normal operations
以下是我的站点配置的编辑版本:
<VirtualHost my.server.ip:80>
ServerAdmin me@mydomain.com
ServerName code.mydomain.com
ErrorLog /srv/www/code.mydomain.com/logs/error.log
CustomLog /srv/www/code.mydomain.com/logs/access.log combined
<Location />
DAV svn
SVNPath /srv/svn/myrepository
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /srv/auth/svn/myrepository.htpasswd
Require valid-user
</Location>
</VirtualHost>
服务器管理员me@mydomain.com
ServerName code.mydomain.com
ErrorLog/srv/www/code.mydomain.com/logs/error.log
CustomLog/srv/www/code.mydomain.com/logs/access.log
DAV svn
SVNPath/srv/svn/myrepository
AuthType Basic
AuthName“Subversion存储库”
AuthUserFile/srv/auth/svn/myrepository.htpasswd
需要有效用户
提前感谢您提供的任何帮助
下面是我根据其他用户的建议所做的一些故障排除的结果(非常感谢)。在每种情况下,我都在进行更改后重新启动Apache,然后检查站点以验证结果: 0)我没有通过SSL连接 1) SVNParentPath只有在使用多个存储库时才有必要——在这里,我只使用一个。尽管如此,我还是使用SVNParentPath重新进行了配置,并得到了相同的结果 2) 我尝试将Auth选项放在限制节中,得到了相同的结果。然后我删除了所有的Auth选项,但得到了相同的结果 3) 从配置文件中删除了所有Auth选项并收到了相同的结果,我认为这与授权模块无关;不过,我可以确认,尽管我确实加载了dav_svn模块,但我没有加载authz_svn模块 4) 我已经在/srv/svn/myrepository位置创建了存储库。我在该位置运行了svnadmin verify,工具报告一切正常 5) 我在Debian5上,Apache作为www数据运行;在此之前,我已经给出了www-data:www-data-ownership的/srv/svn以及/srv/svn/myrepository。我在这些目录上运行了stat,以验证这一点 6) pingcode.mydomain.com表明它确实正在解析到正确的IP地址 7) 我运行了a2ensite code.mydomain.com,这显然还没有完成(oops),并重新启动了Apache。文件夹/srv/www/code.mydomain.com/logs现在包含access.log和error.log,但这两个文件仍然为空。同时,尝试访问code.mydomain.com会产生与以前相同的结果,并且默认的Apache error.log包含与以前相同的错误消息
8) 所有Apache配置文件都不包含名称virtualhost*:80行。首先检查您是否要使用http而不是https 我使用的是centos 5.5。将我的/etc/httpd/conf.d/subversion.conf与您提供的内容进行比较,得出以下观察结果 检查:
<LimitExcept GET PROPFIND OPTIONS REPORT>
...
</LimitExcept>
svnadmin create /srv/svn/myrepository
chown -R apache.apache /srv/svn/myrepository
(如果您在debian/ubuntu上,apache.apache将是www-data:www-data)您需要在位置/svn中放置一个路径。我认为您只需要确保svn站点虚拟域位于层次结构的顶部。默认情况下,debian系统将默认端口配置为默认域。您可能需要更改特定于域的属性 有关详细说明,请查看此链接
最后一行“sudo a2ensite svn.example.com”很重要。非常感谢,先生。我已经更新了最初的帖子,注意到了实施这些建议的结果——简言之,我的问题仍然存在,但你出色的建议确实帮助我排除了一两个原因。我认为在术语上方再多写4行可能有用不幸的是,这就是我访问code.mydomain.com时写入错误日志的全部内容。您是在显示/srv/www/code.mydomain.com/logs/error.log和/srv/www/code.mydomain.com/logs/access.log的内容还是默认apache日志的内容?这里显示的是默认apache日志的内容。/srv/www/code.mydomain.com/logs目录为空。能否发布默认apache日志的内容?当你访问“code.mydomain.com”时,你能告诉我们它是否得到更新吗?另外,您能否告诉我们,在同一配置中是否有其他虚拟主机?我的猜测是,您从浏览器发出的请求是由默认主机或其他虚拟主机响应的?(检查是否属实)哦,它肯定是由默认虚拟主机响应的--我通过禁用“默认”来确认这一点,这导致code.mydomain.com显示了一个完全不同的站点,我在服务器上的其他位置托管了该站点。重新启用“默认”将返回“它工作!”页面。我只是不知道为什么现在它会被默认回答…你应该在某个地方有一个名为VirtualHost*:80的行,最好是在apa中
chown -R apache.apache /srv/svn/myrepository