7

我在目录中托管了一个网站:/var/www/website.com.

该目录及其所有子文件夹允许执行 PHP 代码。但是,我想阻止特定文件夹 ( /var/www/website.com/subfolder) 中的 PHP 文件访问父文件夹并列出其文件。

scandir()示例:应该允许类似 PHP 函数列出 ( /var/www/website.com/subfolder) 中的所有文件夹、子文件夹和文件,但不应允许列出低于该级别的文件。

你知道如何实现这样的行为(最好使用 Nginx)吗?

4

2 回答 2

4

为在该文件夹中运行的文件设置 PHPopen_basedir选项?

例如,在nginx: http: //michaelshadle.com/2011/02/11/setting-php-ini-parameters-from-nginx

于 2012-07-29T05:05:05.480 回答
2

我发现启用 PHP-FPM 的 chroot 变量实际上是将用户真正锁定到目录中的最佳方式。它仍然不是防弹的,但比使用 open_basedir 选项要好得多。

谷歌“chroot 用户 php-fpm”

于 2014-03-27T01:23:47.740 回答