php.ini中的php doc_root和httpd.conf中的DocumentRoot

时间:2014-06-08 23:38:29

标签: php apache

我想了解有关PHP和Apache的更多信息,因此我决定手动安装它们。我并不完全理解这两个文件是如何协同工作的(或者在这种情况下它们是否齐头并进)。每当我加载localhost网页时,php文件的位置都是从我在httpd.conf文件中指定的位置开始的。我为了测试而创建了两个根文件夹,C:/ Users / Alex / test和C:\ Users \ Alex \ My Websites。 Apache实际上并没有使用我在php.ini中指定的位置(doc_root =“C:\ Users \ Alex \ My Websites”),而是使用我在httpd.conf中指定的位置(DocumentRoot“C:/ Users /亚历克斯/测试“)。任何人都可以解释什么是在php.ini中有用的根?

1 个答案:

答案 0 :(得分:0)

很可能你在Apache内部运行mod_php(这是在Apache下运行PHP的最常用方式)。这意味着PHP环境完全由Apache控制(在Unix环境中,Apache也有自己的用户)。您可以重新配置它以使用Fast CGI(这是在其他Web服务器(如nginx)下运行PHP的唯一方法),该设置在该类型的设置下将很重要。

以下是设置的manual entry

  

PHP的服务器上的“根目录”。仅在非空时使用。如果PHP   配置为安全模式,此目录外没有文件   提供服务。如果PHP没有用FORCE_REDIRECT编译,你应该设置   doc_root如果您在任何Web服务器下运行PHP作为CGI(其他   比IIS)。另一种方法是使用cgi.force_redirect   配置如下。