Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php$SERVER[';PATH#u INFO';]和apache mod#u rewrite_Php_Apache_Mod Rewrite_Pathinfo - Fatal编程技术网

php$SERVER[';PATH#u INFO';]和apache mod#u rewrite

php$SERVER[';PATH#u INFO';]和apache mod#u rewrite,php,apache,mod-rewrite,pathinfo,Php,Apache,Mod Rewrite,Pathinfo,这里有.htaccess文件,其中包含: Options +FollowSymLinks RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [QSA,L] 重写也可以,但在我尝试的时候,index.php中没有路径信息 我已经讨论过这个话题,但它并没有解决我的问题 所以,这个问题只发

这里有.htaccess文件,其中包含:

Options +FollowSymLinks

RewriteEngine on

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .* index.php [QSA,L]
重写也可以,但在我尝试的时候,index.php中没有路径信息

我已经讨论过这个话题,但它并没有解决我的问题

所以,这个问题只发生在Apache1.3上(在2.0上一切正常),我想知道为什么。不幸的是,我也无法访问httpd.conf(


请帮帮我。

尝试将重写规则更改为:

RewriteRule (.*) index.php [QSA,L,E=PATH_INFO:/$1]
是实际CGI可执行文件/PHP脚本文件名之后的虚拟路径后缀。
您需要通过一个才能看到它:

RewriteRule (.*) index.php/$1 [QSA,L]
请注意,您可能还需要先启用该选项:


然后根据PHP SAPI,您可能需要配置PHP.ini,关于
--cgi force redirect
设置(设计用于避免某些设置中的路径信息漏洞)。

这与
mod\u协商
有关,并且能够访问
/index.PHP
作为
/index
(无扩展名)

解决方案:

a2dismod negotiation

service apache2 restart

如果您
var\u dump($\u SERVER);
,是否有任何内容包含您想要的内容?特别是
$\u SERVER['REQUEST\u URI']
包含什么内容?是的,有REQUEST\u URI,我从中构建自己的路径信息。但我只是尝试实现其他决策。我尝试了重写rule(.*)index.php/$1[QSA,L]以前,没有成功。AcceptPathInfo On-据我所知,此选项是在apache 2中添加的,但我的是1.3,无法升级。如果尝试转到site.com/index.php/example,将显示路径信息。您只是忘记了,因为它会崩溃。我将快速编辑它。。。
a2dismod negotiation

service apache2 restart