首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的文档根目录显示在PATH_INFO、PATH_TRANSLATED和PHP_SELF中?

为什么我的文档根目录显示在PATH_INFO、PATH_TRANSLATED和PHP_SELF中?
EN

Stack Overflow用户
提问于 2016-08-23 19:28:02
回答 1查看 79关注 0票数 1

我设置了一个VirtualHost,如下所示:

代码语言:javascript
复制
<VirtualHost *:80>
       ServerName ownedmedia.vzweb07.example.co.uk
       DocumentRoot /var/www/vhosts/owned_media_microsite/httpdocs
       ErrorLog /var/www/vhosts/owned_media_microsite/logs/error_log
       CustomLog /var/www/vhosts/owned_media_microsite/logs/access_log combined
       SetEnv ENVIRONMENT 'development'
       <Directory /var/www/vhosts/owned_media_microsite/httpdocs>
               AllowOverride All
               allow from all
               Options +Indexes
       </Directory>
</VirtualHost>

我在DocumentRoot中有一个.htaccess文件,如下所示:

代码语言:javascript
复制
AddDefaultCharset UTF-8

DirectoryIndex index.php

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|robots\.txt|favicon\.ico)

RewriteRule ^(.*)$ index.php/$1 [L]

当我访问http://ownedmedia.vzweb07.example.co.uk/admin/modules/load/coreg_api_module/rule/1并对$_SERVER数组执行var_dump操作时,我看到了以下内容...(我去掉了一些不相关的值)。

代码语言:javascript
复制
["DOCUMENT_ROOT"]=>
string(46) "/var/www/vhosts/owned_media_microsite/httpdocs"
["SCRIPT_FILENAME"]=>
string(56) "/var/www/vhosts/owned_media_microsite/httpdocs/index.php"
["REDIRECT_URL"]=>
string(43) "/admin/modules/load/coreg_api_module/rule/1"
["REQUEST_METHOD"]=>
string(3) "GET"
["QUERY_STRING"]=>
string(0) ""
["REQUEST_URI"]=>
string(43) "/admin/modules/load/coreg_api_module/rule/1"
["SCRIPT_NAME"]=>
string(10) "/index.php"
["PATH_INFO"]=>
string(52) "/httpdocs/admin/modules/load/coreg_api_module/rule/1"
["PATH_TRANSLATED"]=>
string(123) "redirect:/index.php/httpdocs/httpdocs/admin/modules/load/coreg_api_module/rule/1/admin/modules/load/coreg_api_module/rule/1"
["PHP_SELF"]=>
string(62) "/index.php/httpdocs/admin/modules/load/coreg_api_module/rule/1"

为什么PATH_INFO等包含httpdocs目录?

httpdocs中甚至没有一个名为httpdocs的目录,所以PATH_TRANSLATED不可能是正确的。

有谁知道为什么会发生这种情况吗?这个项目已经设置好了,并且在其他主机上运行良好,我在这台机器上还有其他vhost,它们没有遇到同样的问题。

EN

回答 1

Stack Overflow用户

发布于 2016-08-24 15:11:30

奇怪的是,我能够通过从文档根目录下删除所有内容,然后重新上传来修复这个问题。也许是一个放错地方的htaccess文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39099909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档