当前位置:web 服务器 > IIS >>

php在IIS下和apache下urlrewrite返回不同的REQUEST_URI解决办法

 

php在windows IIS平台运作的时候,有些东西和在Linux apache下不太一样。

今天遇到个神奇的问题,就是用$URI=$_SERVER["REQUEST_URI"];

在linux下看到的是urlrewrite静态化以后的地址 /exy/exk/list-3/

windows下返回的是原来的地址 /exy/article.php?page=3

这时候发现windows下有个办法HTTP_X_REWRITE_URL

这个数组,linux下没有
所以代码小修改下以兼容两个平台。(更换服务器真是各种水土不服)

 代码如下 复制代码

$URI = $_SERVER["HTTP_X_REWRITE_URL"];
if($URI==null){
$URI=$_SERVER["REQUEST_URI"];
}
//print_r($_SERVER);
echo $URI;

这样就两个平台都能正确的显示了。

补充:Php教程,常见问题
Apache
IIS
Nginx
Tomcat
如果你遇到web 服务器难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,