权限设置正确,但目录访问权限仍对其他用户开放

权限设置正确,但目录访问权限仍对其他用户开放

我想对用户(网站访问者)完全隐藏的目录是这样的:

drwx------ 2 apache apache 4096 Aug 18 19:01 token

但是,如果我将浏览器指向该token目录,我可以看到目录中的每个文件并打开它们。我在这里遗漏了什么?

我只希望 apache(我的服务器)能够与此文件夹交互,因为有一个 cron 作业需要它具有读取、写入和执行的权限。除此之外,不需要任何人或任何事物访问该目录。

答案1

听起来您的网络服务器正在为该目录创建目录列表,但您不希望它这样做。

在 Apache 配置中禁用该目录的索引,例如:

<Directory /path/to/directory>
  Options -Indexes
</Directory>

+Indexes或者,如果您根本不想启用目录列表,请搜索设置了的 apache 配置并将其删除。

有关更多信息,请参阅 Apache HTTPD 文档:

https://wiki.apache.org/httpd/DirectoryListings

如果您想要完全禁止系统外部与该文件夹的交互,则可以使用访问控制指令来限制访问。例如:

<Directory /path/to/directory>
  Order deny,allow
  Deny from all
  Allow from localhost
</Directory>

有关访问控制的更多信息:

http://httpd.apache.org/docs/2.2/howto/access.html

相关内容