我最近从对我的网页使用 .shtml 文件切换到使用 .php 文件。在弄清楚 PHP 如何处理目录之后,一切似乎都运行良好。直到我意识到文件权限对 .php 文件的作用似乎与对 .shtml 文件的作用不同。
问题:web根目录下的某些php文件应该是外界无法访问的,所以相应地设置了权限,ls -l
显示文件的权限状态为
-rwx------
不幸的是,这个文件仍然可供全世界访问。但是,拒绝用户访问该文件会使该文件无法被全世界访问,尽管它不会自动定向到 403.php。相反,会显示一个简单的“拒绝访问”。
奇怪的是,我的 .shtml 文件的权限设置按预期工作。如果我尝试访问 test.shtml,我会根据我的 .htaccess 设置自动重定向到 mywebsite.com/403。
这一切都导致了两个问题:
- 如何正确管理 .php 文件的权限?
- 我可以在 .htaccess 文件中硬编码权限吗?