如何在共享主机上禁止来自外部 Web 服务器的 PHP 文件请求

How to disallow PHP file requests from outside web server on shared hosting

如果您与像 GoDaddy 这样的提供商有一个共享主机计划,但没有完全访问服务器的权限,我能做些什么来禁止对 *.php 文件的外部 HTTP 请求吗?

如果有人有共享主机或 GoDaddy 方面的经验,我们将不胜感激。我在 GoDaddy 上,我唯一能尝试的就是弄乱 php 文件的 User/Group/World 权限,但没有任何组合允许仅服务器访问文件。而且,显然,我无法访问 apache 服务器的配置文件,这是最简单的解决方案。

对 *.php 文件的外部 HTTP 请求

我会将此解释为您愿意与之共享页面的一组人之外的请求。您想要限制对您网站的访问。

最简单的方法 -

在 DocumentRoot 中使用一个 .htaccess 文件来限制 IP 地址的访问(如果你愿意强迫所有使用这些文件的人从一组有限的 IP 工作地址)

https://httpd.apache.org/docs/current/howto/htaccess.html

对于 Apache 2.2,在 .htaccess 文件中,输入

Order Deny,Allow
Deny from all
Allow from 1.2.3.4 

对于 Apache 2.4,使用

Require ip 1.2.3.4

另一个快速解决方案是用密码保护包含 .php 文件的目录。配置看起来像这样:

AuthType Basic
AuthName "Restricted Files"
# (Following line optional)
AuthBasicProvider file
AuthUserFile "/usr/local/apache/passwd/passwords"
Require user goodguy

https://httpd.apache.org/docs/current/howto/auth.html#lettingmorethanonepersonin

您可能希望找到具有 SSH 访问权限的主机以提供更多控制权。