首頁 >php教程 >php手册 >php在IIS下和apache下urlrewrite返回不同的REQUEST_URI解决办法

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

WBOY
WBOY原創
2016-06-13 09:57:351385瀏覽

以前我做一个获取url的功能,当时使用的是在linux系统,结果我使用REQUEST_URI可以,但在windows中好像方法不一样了,今天我又看到这样一篇文章,现在转给各位参考。

 

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;

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn