php权限仅用于执行且不可读

时间:2013-04-06 05:43:48

标签: php permissions

我有一些pho文件,它们在执行时会触发一个sms服务器的api,它会进一步发送短信。 这些php文件由另一台服务器触发,其中包含mobile no和msg等数据。 现在这些文件托管一个简单的共享服务器。应该赋予文件夹和文件哪些权限,以便公共可读,但由服务器触发/执行。这些文件包含其他服务(如sms网关)的凭据,因此需要加以保护。

我尝试的是将711给予文件夹,以便它成为公众的秘密。 现在对于文件644或711这是更好的选择。 或者应该有其他事情要做。

1 个答案:

答案 0 :(得分:0)

UNIX权限区分用户,组和其他的读/写/执行权限。 “其他”并不意味着“公开”,它与此无关。

UNIX进程在特定的用户下运行,即如果您登录并运行以您的用户名运行的程序,则Apache进程通常以用户daemon等运行。每个用户都可以属于一个或多个。这是用户和组权限所涉及的两件事。 “其他”指的是不适合用户或组的用户进程。

,例如,这个文件:

-rwxrw-r--  1 root  admin  5069718 Apr  6 14:52 /foo/bar/baz

root用户可读,可写和可执行admin组中的任何用户可读写。任何不是rootadmin组的用户都只对该文件具有读取权限。这就是“其他”所指的。

这完全取决于流程运行的用户,而不是“计算机上的内容与网站访问者”。 “网站访问者”不是UNIX权限所涵盖的概念。

由于Apache通常以daemon运行,因此请为daemon或至少组daemon拥有文件,并为此用户设置可读且可执行和/或小组。如果 Apache 需要对某些文件或目录具有写权限,则还需要在需要时选择性地启用写访问(例如,日志文件)。是否可以通过HTTP公开访问 URL 以及脚本是否由Apache控制,而不是由UNIX权限控制。

相关问题