doc_root与$ _SERVER ['DOCUMENT_ROOT'],最后open_basedir参加聚会

时间:2018-12-20 18:17:04

标签: .htaccess security server document-root open-basedir

首先,我不了解配置指令“ doc_root”和服务器变量$ _SERVER ['DOCUMENT_ROOT']之间的区别。

PHP手册中的内容如下:

  

您可以通过配置文件中的配置指令doc_root来设置PHP脚本文档的根目录,或者可以设置环境变量PHP_DOCUMENT_ROOT。如果设置了该属性,PHP的CGI版本将始终使用该doc_root和请求中的路径信息来构造要打开的文件名,因此您可以确保在该目录之外没有执行任何脚本(以下user_dir除外)。

我不确定,但是我认为它说,如果您将指向您的“ html_public”(或您使用的根文件夹)的指令“ doc_root”设置为,则不必担心$在哪里_SERVER ['DOCUMENT_ROOT']指向..right ??

相反呢?如果设置了$ _SERVER变量,则不必同时设置指令吗?

我知道指令优先于服务器变量,因此,仅设置指令是否足够安全?

另一方面,(顺便说一句,我为自己的无知而道歉,因为我可能正在提出“琐碎的”问题),指令“ open_basedir”看起来非常相似(对我来说,它是完全一样的)目的/目的。 PHP手册说:

  

将PHP可以访问的文件限制在指定的目录树中,包括文件本身。

起初,我会说:“只是将所有值设置为相同的值,不要考虑太多”,但我想尽一切努力准确地理解它们之间的区别,以便使其安全良好。 / p>

我的问题不仅涉及安全性,还涉及性能,因为我必须在.htaccess文件中设置所有变量,指令等(我无法访问php.ini,vhost和htppd.conf。文件)。

0 个答案:

没有答案