这两种方式设置权限有什么区别?

这两种方式设置权限有什么区别?

方法 1:通过 apache2.conf(或 httpd.conf):

<Directory "/var/www/html">
  Options Indexes FollowSymLinks -MultiViews
  AllowOverrides None
  Order allow,deny
  Allow from all
</Directory>

方法 2:在命令行中使用 Chmod。

这两种方法不是都能完成同一件事吗?

还有一个问题,如果您可以回答的话,var 和 www 文件夹通常设置为什么权限?

谢谢

答案1

方法 2 在文件系统级别设置权限,因此不仅适用于 Apache。这是设置文件权限的安全方法。

方法 1 在应用层设置权限,但方法 2 也适用。如果您的内容无法被 Apache 读取,那么即使方法 1 告诉客户端可以读取文件,它也无法执行此操作。

所以快速回答是否定的。
方法 2 将用于确保 Apache 可以读取您的 php 文件,但其他用户/进程不能。方法 1 将用于使用密码保护页面访问等...

我看到您设置了 PHP 标记,请注意方法 1 不会影响 PHP 可以读取或写入的内容。方法 2 以及 PHP 配置将实现此目的。

/var 在我的系统上是 755 root/root,www 将高度依赖于您的 apache 配置和您所需的安全性。

相关内容