详解 $_SERVER 函数中QUERY_STRING和REQUEST_URI区别
2015-07-04 09:11
585 查看
详解 $_SERVER 函数中QUERY_STRING和REQUEST_URI区别
http://blog.sina.com.cn/s/blog_686999de0100jgda.html实例:
1,http://localhost/aaa/ (打开aaa中的index.php)
结果:
$_SERVER['QUERY_STRING'] = "";
$_SERVER['REQUEST_URI'] = "/aaa/";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
2,http://localhost/aaa/?p=222 (附带查询)
结果:
$_SERVER['QUERY_STRING'] = "p=222";
$_SERVER['REQUEST_URI'] = "/aaa/?p=222";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
3,http://localhost/aaa/index.php?p=222&q=333
结果:
$_SERVER['QUERY_STRING'] = "p=222&q=333";
$_SERVER['REQUEST_URI'] = "/aaa/index.php?p=222&q=333";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
由实例可知:
$_SERVER["QUERY_STRING"] 获取查询 语句,实例中可知,获取的是?后面的值
$_SERVER["REQUEST_URI"] 获取 http://localhost 后面的值,包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:index.php
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名
$_SERVER['REQUEST_URI']和$_SERVER["HTTP_X_REWRITE_URL"]的区别
http://www.hujuntao.com/web/php/difference-between-server-request-uri-and-server-http_x_rewrite_url.htmlWordPress通过301重定向实现非首先域(非www)跳转向本来是一个很简单事情,由于没弄清楚$_SERVER['HTTP_X_REWRITE_URL'] 和$_SERVER['REQUEST_URI']的区别导致了循环重定向问题。
现在来具体研究下$_SERVER['HTTP_X_REWRITE_URL'] 和$_SERVER['REQUEST_URI']的区别
首先要纠正一部分的观点就是IIS+PHP不支持$_SERVER['REQUEST_URI']
不是,不支持是PHP Version 版本的问题,php4.4.0不支持 $_SERVER['REQUEST_URI'],php5.2.5则增加了支持;
$_SERVER['REQUEST_URI']常用来获当前URL
例如:http://www.hujuntao.com/index.php?p=3
$_SERVER['REQUEST_URI']获得的就是/index.php?p=3这部分
。
$_SERVER["HTTP_X_REWRITE_URL"]则在IIS下获得的是当前URL,在apache下的值为空
例如:
当前URL:http://www.hujuntao.com/
IIS环境下:
$_SERVER['REQUEST_URI'] = /index.php
$_SERVER["HTTP_X_REWRITE_URL"] =/
apache环境下:
$_SERVER['REQUEST_URI'] = /
$_SERVER["HTTP_X_REWRITE_URL"] =”
当前URL:http://www.hujuntao.com/index.php
IIS环境下:
$_SERVER['REQUEST_URI'] = /index.php
$_SERVER["HTTP_X_REWRITE_URL"] =/index.php
apache环境下:
$_SERVER['REQUEST_URI'] = /index.php
$_SERVER["HTTP_X_REWRITE_URL"] =”
相关文章推荐
- jsp request 获取路径
- [UIImage resizableImageWithCapInsets:]使用注意
- UIStepper
- IOS 判断当前UIViewController 是否正在显示
- 【leetcode】Distinct Subsequences
- UVA 246 10-20-30 10-20-30游戏 模拟+STL双端队列deque
- Leetcode 之 Unique Paths
- GDB调试之TUI
- UITableViewCell绘制分割线
- ueditor空行问题
- iOS-UI控件之UITableView(四)- cell数据刷新
- iOS-UI控件之UITableView(三)- 自定义不等高的cell
- Gensim官方教程翻译(四)——相似度查询(Similarity Queries)
- Tair分布式key/value存储
- 20150702_UI之UIViewController的生命周期
- 20150702_UI之UITextField使用
- 20150702_UI之CALayer简单的两个属性
- 20150702_UI之UIView中层的注意事项及MVC练习
- 20150701_UI之UIView自动布局
- 20150701_UI之UIImageView使用