svn - 如何隐藏 Apache 中的目录,特别是源代码管理?

标签 svn apache

我想将我的网站保留在版本控制中(特别是 Subversion),并在有稳定版本需要更新时使用 svn co 来更新它,但我担心这样做的安全性因此,由于所有 .svn 文件夹都将是公开的,并且其中包括各种私有(private)数据,尤其是我网站的完整源代码!

我能做些什么来防止这种情况发生吗?

最佳答案

有两件事:

  1. 不要将 IfModule 用于您需要存在的功能。可以为自动索引执行此操作,因为它可能不存在并且对于该方案并不重要。但您指望重写来保护您的内容。因此,最好删除 IfModule 指令,让 apache 告诉您何时不存在重写,以便您启用它(或者至少知道您不会受到“保护”并有意识地注释这些行)

    <
  2. 如果您有权访问主配置文件,则无需在那里使用重写,其中之一会更容易

    <DirectoryMatch \.svn>
       Order allow,deny
       Deny from all
    </DirectoryMatch>
    

这将生成 403 Forbidden(从 HTTP 合规性的角度来看,这更好) 或者,如果您想通过默默无闻的方式实现安全性,请使用 AliasMatch

    AliasMatch \.svn /non-existant-page

如果您无权访问主配置文件,您只能希望在 .htaccess 中启用 mod_rewrite 来使用。

关于svn - 如何隐藏 Apache 中的目录,特别是源代码管理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/214886/

相关文章:

svn - Subversion 可以报告随时间变化的代码百分比吗?

svn - 结帐时出现 Subversion 意外服务器错误 500

svn - 颠覆 : Configure svn access through http protocol

php - 调用 REST api (Phalcon) 时出现 404 错误

apache - Apache 上的单个网站默认使用 HTTPS

apache - .htaccess 中不同协议(protocol)的 URL 重写

svn - 是否可以部分恢复 SVN 中的合并

regex - 如何使用PowerShell修剪SVN日志输出中的文件修改值

php - 内部服务器错误 Codeigniter HMVC

php - 同时服务器多个选项卡