如何保护文件夹不被浏览器访问但允许 PHP 脚本访问它

如何保护文件夹不被浏览器访问但允许 PHP 脚本访问它

因此,我目前有一个位于 /var/www/pictures 的文件夹,其中 /var/www 是我的 Web 服务器的文档根目录。如果用户尝试通过简单地转到 mydomain.com/pictures 来访问该文件夹,我希望图片文件夹会抛出 403 禁止错误,但我还需要一个位于 /var/www 的 php 脚本,以便能够在用户转到 mydomain.com/myscript.php 时显示来自 /var/www/pictures 的图像。有什么办法吗?

提前感谢所有帮助!

答案1

您可以使用.htaccess。只需在您的图片目录中创建这样的文件并输入以下指令:

Order allow, deny
Deny from all

有关 Order 和 Deny 指令的详细信息,请参阅手册。

请注意,错误将是 403 Forbidden,而不是 404 Not Found。

请注意,这将拒绝通过 HTTP 访问目录中的所有文件。您的其他 PHP 文件可以包含或需要这些文件,因为这是一个纯粹的服务器端操作。如果您出于某种原因需要一个 PHP 脚本通过 HTTP 执行另一个脚本,那么您可以将顺序更改为拒绝、允许,并添加一行Allow from 127.0.0.1以允许本地请求继续进行或任何特定 IP。

相关内容