0

我通过访问 SVN 存储库

  • http://svn.example.com/repo1
  • http://svn.example.com/repo2
  • ...

使用以下 Apache 配置

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

<VirtualHost xxx.xxx.xxx.xxx>
    ServerName svn.example.com

    <Location />
        DAV svn
        SVNParentPath /path/to/svn/repositories
        AuthzSVNAccessFile /path/to/svn/conf/auth_policy
        Satisfy Any

        AuthType Basic
        AuthName "Subversion repository"
        AuthUserFile /path/to/svn/conf/passwdfile
        Require valid-user
    </Location>
</VirtualHost>

我想阻止网络爬虫索引公共存储库,但我不知道如何正确设置配置以robots.txt从.http://svn.example.com/robots.txt

从 2006 年开始,我发现了一个线程“使用 robots.txt 停止网络爬虫”,但它并没有帮助我解决问题(Ryan 的重定向建议不起作用)。

编辑:我宁愿将存储库保留在顶层,而不是将它们移动到 http://svn.example.com/something/reponame 。_

4

1 回答 1

0

不要将 Subversion 存储库的虚拟目录放在服务器的根目录中:

错误的

<Location />
    DAV svn
    SVNParentPath /path/to/svn/repositories

正确的

<Location /svn>
    DAV svn
    SVNParentPath /path/to/svn/repositories

不是您的存储库根目录http://svn.example.com,而是http://svn.exmaple.com/svn. 这可以释放成为真正的文档根,这意味着您可以添加一些关于您的站点的文档http://svn.example.com,并放入.robots.txthttp://svn.example.com/robots.txt

现在,一个表现良好的机器人将看到该robot.txt文件,而不是索引您的 Subversion 存储库。

于 2014-01-09T01:42:01.333 回答