>php教程 >php手册 >PHP识别url重写请求

PHP识别url重写请求

WBOY
WBOY원래의
2016-06-06 19:59:53912검색

现在很多PHP程序都使用了url重写技术来优化url,但是有时候我们要在PHP程序中区分默认url的请求和url重写后的请求,这该如何处理呢? 我的解决方案是在常量$_SERVER里面找答案,在不同的服务器中$_SERVER都会有一个索引用来记录重写请求访问重写之前的路径,

现在很多PHP程序都使用了url重写技术来优化url,但是有时候我们要在PHP程序中区分默认url的请求和url重写后的请求,这该如何处理呢?

我的解决方案是在常量$_SERVER里面找答案,在不同的服务器中$_SERVER都会有一个索引用来记录重写请求访问重写之前的路径,部分主流服务器的索引如下

IIS7 + Rewrite Module -> $_SERVER['HTTP_X_ORIGINAL_URL']

IIS6 + ISAPI Rewite -> $_SERVER['HTTP_X_REWRITE_URL’]

Apache2 -> $_SERVER['REQUEST_URI’] 或 $_SERVER['REDIRECT_URL']

nginx -> $_SERVER['REQUEST_URI’]

因此得出的结果是,只要判断 HTTP_X_ORIGINAL_URL, HTTP_X_REWRITE_URL, REQUEST_URI, REDIRECT_URL 这些参数,我们就可以在PHP中来判断请求url来自于重写地址的还是默认格式的地址了。

 

注:关于url重写

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.