ホームページ  >  記事  >  php教程  >  php在IIS下和apache下urlrewrite返回不同的REQUEST_URI解决办法

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

WBOY
WBOYオリジナル
2016-06-13 09:57:351360ブラウズ

以前我做一个获取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 までご連絡ください。