【发布时间】:2013-10-30 20:51:26
【问题描述】:
我的 PHP 脚本使用 $_POST['fileUrl'];为用户检索文件,我认为这会构成安全威胁,因为任何人都可以将“../../”等附加到 fileUrl 以访问我服务器上的其他文件。
我需要找到最好(最安全)的方法来限制我的脚本可以访问特定目录的文件。从我读到的设置 open_basedir 标志将限制我的脚本对指定路径的访问。
脚本.php
$fileUrl = $_POST['fileUrl'];
$content = chunk_split(base64_encode(file_get_contents($fileUrl)));
.htaccess
php_flag open_basedir "var/www/vhosts/mydomain.com/php_can_only_access_files_in_this_directory/"
有没有更好的方法来做到这一点?这个脚本是否完全可以安全地访问 open_basedir 之外的文件夹?
【问题讨论】:
-
不应该
var/www/vhosts以斜杠开头:/var/www/vhosts所以它被解释为绝对文件路径?
标签: php .htaccess security open-basedir