Mkdir()或chmod()将目录内容设置为隐藏,但将子目录内容设置为可见


mkdir() or chmod() set directories contents to hidden, but subdirectories contents to viewable

我正在为小型独立游戏开发者创建一个基于文件的存储系统。这一切都由一个PHP文件控制,通过POST/GET变量处理"查询"。我希望PHP文件创建一个目录,其中包含子目录(每个游戏一个)。我不想让任何人看到这个主目录下的游戏,所以他们不能看到其他游戏ID,但如果他们有自己的游戏ID,他们可以看到他们的游戏文件夹的内容。

下面是保存游戏目录的主目录:http://shadespeed.com/shadetech_storage/

我想隐藏该文件夹中的所有内容,但显示子目录中的内容,例如:http://shadespeed.com/shadetech_storage/12345678/

这可能吗?

查看chmod(),我找不到任何我想要的模式:http://www.php.net/manual/en/function.chmod.php

许多谢谢,

  • 丹。

我使用了变通方法。我只是在主目录中创建了一个HTML文件(index.html)。它目前是有效的,但我不确定它是否会阻止那些知道自己在做什么的人。

也许你应该简单地创建一个.htaccess文件,内容为:

Options -Indexes 

你可以把它放在主文件夹如果你不想让用户在这个目录下显示文件那么你可以把它放在目录http://shadespeed.com/shadetech_storage/

如果您的服务器是基于Apache的,只需在主目录中使用禁止访问该目录内容的.htaccess文件(如代码1),并在每个子目录中使用.htaccess文件以便允许访问它们(如代码2)

代码1:

Order deny,allow
Deny from all
代码2:

Order allow,deny
Allow from all