读取和执行,文件权限之间的区别

Difference between read & execute, file permission

这听起来像是一个非常基本的问题,但我对 "reading" 文件和 "executing" 文件的构成有点困惑。

例如: 用户 1 从在线网站购买机票,并希望查看网站上显示的机票(jpeg 格式)。

这是否被认为是 "reading" 文件夹?或者这实际上是在执行文件夹?

如果用户权限设置为 "read only," 这意味着用户可以通过网站上的操作访问文件(在这种情况下,他们购买的机票的图像),但不能访问文件直接urllink对吧?例如,www.exampletickets.com/user1/tickets

Web 服务器(apache、nginx、...)将通过读取而不是执行来提供任何图像文件 - 对任何其他文件都一样 - 无论是否直接访问。

此外,Linux 文件权限是从机器本身授予的 - 此处,用户将是用户 运行 网络服务器实例 - 通常是一个 linux 用户命名为 "www-data"。所以它与您网站的用户没有任何关系。

更多信息(您网站的完美文件和目录权限是什么?)-> https://serverfault.com/questions/345833/what-are-perfect-unix-permissions-for-usual-web-project-directories

文件夹权限:

  • Execute -> Actually enter that folder but not be able to read it's contents, see what files are located there.
  • Read -> Be Able To Read Folder Contents
  • Write -> Edit folders data. delete or create new files/folders inside it and etc

文件权限:

  • Execute -> if it's script like index.php run it to get data from it
  • Read -> if it's text file like index.html or index.php be able to read it
  • Write -> ability to change its data

至于安全性,只有当其他(而不是您的团队)用户可以访问您的服务器时,此权限才会成为问题,这主要发生在使用托管服务但没有获得专用操作系统的人时是一个操作系统,所有用户都在那里上传他们的数据。因此,如果没有正确保护,他们可以查看和编辑彼此的源代码。

今天您将像往常一样获得专用服务器,其中包含更多安全工具和操作系统,只有您可以访问,其他人无法访问(虚拟化)。

因此您不必担心有人会查看或更改您的数据,因为您是唯一有权访问该服务器的人。