代码之家  ›  专栏  ›  技术社区  ›  Chris

我该如何隐藏。PHP中的SVN目录

  •  1
  • Chris  · 技术社区  · 16 年前

    我正在使用SVN管理我网站的副本。该网站运行typo3安装,使用PHP创建后端。

    那么,有什么方法可以对PHP隐藏特殊目录吗?

    [注] 更改PHP源代码不是一种选择。Typo3太大了,每个扩展都使用自己的代码。这比SVN导出脚本要费力得多。

    PS:我不想设置svn导出-->web_root只是为了删除文件。我知道我可以阻止apache提供服务。SVN目录,我做到了。但在浏览目录树(由PHP创建)时,它们仍然会出现在后端。而且它们很烦人。..

    10 回复  |  直到 16 年前
        1
  •  4
  •   Juliano    16 年前

    这很困难,因为您必须更改文件系统和Typo3之间某个地方的行为。您有:

    文件系统操作系统PHP Typo3

    文件必须保留在文件系统中,并且必须对操作系统可见,因此您可以使用SVN。更改Typo3不是你的选择,更改PHP还有许多其他你应该避免的重大不良后果。所以,你剩下的就是在OSPHP或PHPTypo3之间插入一些东西。

    第一种情况实际上是可能的,这取决于您使用的操作系统,以及您是否具有管理员(root)访问权限。 FUSE 是Linux内核的一部分,也是 available for many other operating systems 然后,用保险丝,你可以安装一个过滤器,比如 rofs-filtered .svn 目录。

        2
  •  3
  •   X-Istence    16 年前

    那么,有什么方法可以对PHP隐藏特殊目录吗?

    号码

    只要用户PHP在具有目录读取权限的情况下运行,它就会始终生成该目录中的所有文件/目录。无法对某些进程隐藏文件,如果可能的话,编写一个根工具包来隐藏ls和其他文件系统工具会容易得多。

    您想要/需要的选项是一种定义Typo3忽略的文件的方法,并使其在系统范围内使用,从而也被扩展名使用。但是,您已指定不想更改源代码,也不想进行svn导出。

    因此,您只能使用.svn目录。

        3
  •  3
  •   Quentin    15 年前

    简短的回答是“不容易、简单或理智”。

    从以下位置运行网站 export

        4
  •  0
  •   Ólafur Waage    16 年前

    试试这个。

    <locationmatch "/.svn/">
        order allow,deny
        deny from all
    </locationmatch> 
    

    顺便说一句,在PHP的循环中,你可以进行逻辑检查,看看文件名是否不是“.svn”,通常PHP目录工具会这样做,以排除“.”和“..”目录。

        5
  •  0
  •   Zoredache    16 年前

    问题是,所有的愚蠢。版本控制 文件夹显示在目录中 PHP的列表。我不是说 内置apache列表。我是说 由PHP创建的directoy列表 后端。

        6
  •  0
  •   BobbyShaftoe    16 年前

    只需找到或编写一个非常简单的应用程序,即可将当前目录与将向Web公开的新目录同步。你可以有一个服务来监视变化,或者使用像rsync这样的带有排除项的东西。这会简单得多,因为根据另一个问题,你使用的是Windows。

        7
  •  0
  •   konsolenfreddy    16 年前

    ther是一个名为np_subversion的扩展,它将通过subversion处理fileadmin更改。作为一个不错的补充,它会为你隐藏文件夹

        8
  •  0
  •   Paul D. Waite    16 年前

    我不想设置svn导出-->web_root只是为了删除文件

        9
  •  0
  •   mst    16 年前

    Sara Golemon的 Runkit

        10
  •  -1
  •   Dana the Sane    16 年前

    find ./ -name ".svn" | xargs rm -f *.svn