zoukankan      html  css  js  c++  java
  • 详解 $_SERVER 函数中QUERY_STRING和REQUEST_URI区别(转)

     

    对于php$_SERVER这个全局变量 ,里面有很多的参数,慢慢的熟悉

    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"]的区别 

    WordPress通过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"] =”

  • 相关阅读:
    hadoop(四)HDFS的核心设计
    spark(三)spark sql
    hadoop(三)HDFS基础使用
    hadoop(二)hadoop集群的搭建
    IOS微信中看文章跳转页面后点击返回无效
    使用GBK编码请求访问nodejs程序报415错误:Error: unsupported charset at urlencodedParser ...
    mac端口占用查找进程并杀死
    tinymce4.x 上传本地图片(自己写个插件)
    mongodb使用mongoose分组查询
    javascript/jquery给动态加载的元素添加click事件
  • 原文地址:https://www.cnblogs.com/luomir/p/5129875.html
Copyright © 2011-2022 走看看