http://www.ape-men.com/bbs/43_1_1.html

服务器环境
linux/apache/mysql

问题描述
        服务器开启了伪静态,并且也设置了伪静态文件.htaccess,但是伪静态不起作用,所有页面都跳转到了首页,我的伪静态文件如下:

  1. RewriteEngine on
  2. AcceptPathInfo On
  3. RewriteBase /
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteCond %{REQUEST_URI} !\.(css|js|png|jpeg|gif)$
  7. RewriteRule ^(.*)$ /index.php/$1 [QSA,PT,L]

复制代码解决思路
        1、伪静态文件.htaccess是否起作用,于是我将我将首页修改为index.aaa

  1. RewriteRule ^(.*)$ /index.aaa/$1 [QSA,PT,L]

复制代码       此时发现网站是打不开的,所以断定伪静态文件起作用,并且能够定位到index.php.
        2、此时分析可能是index.php 后的内容获取不到,获取此内容是通过path_info 进行获取,所以检测是否能够获取到path_info

  1. echo $_SERVER['PATH_INFO'];

复制代码       3、打印出来的结果为空白,继续打印$_Server;

  1. echo $_SERVER;

复制代码       打印出的结果为:

  1. array(64) {
  2. ["DOCUMENT_ROOT"]=>
  3. string(30) "/usr/home/qxu1780990217/htdocs"
  4. ["GATEWAY_INTERFACE"]=>
  5. string(7) "CGI/1.1"
  6. ["HTTP_ACCEPT"]=>
  7. string(63) "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
  8. ["HTTP_ACCEPT_ENCODING"]=>
  9. string(13) "gzip, deflate"
  10. ["HTTP_ACCEPT_LANGUAGE"]=>
  11. string(59) "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2"
  12. ["HTTP_CACHE_CONTROL"]=>
  13. string(8) "no-cache"
  14. ["HTTP_CONNECTION"]=>
  15. string(10) "keep-alive"
  16. ["HTTP_COOKIE"]=>
  17. string(42) "PHPSESSID=5d1dac4ecd19a129494040cd0bee0bfe"
  18. ["HTTP_HOST"]=>
  19. string(22) "qxu1780990217.my3w.com"
  20. ["HTTP_PRAGMA"]=>
  21. string(8) "no-cache"
  22. ["HTTP_UPGRADE_INSECURE_REQUESTS"]=>
  23. string(1) "1"
  24. ["HTTP_USER_AGENT"]=>
  25. string(73) "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0"
  26. ["PATH"]=>
  27. string(13) "/bin:/usr/bin"
  28. ["PHPRC"]=>
  29. string(40) "/var/www/php54/hichina_ini/qxu1780990217"
  30. ["QUERY_STRING"]=>
  31. string(0) ""
  32. ["REDIRECT_DOCUMENT_ROOT"]=>
  33. string(30) "/usr/home/qxu1780990217/htdocs"
  34. ["REDIRECT_GATEWAY_INTERFACE"]=>
  35. string(7) "CGI/1.1"
  36. ["REDIRECT_HTTP_ACCEPT"]=>
  37. string(63) "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
  38. ["REDIRECT_HTTP_ACCEPT_ENCODING"]=>
  39. string(13) "gzip, deflate"
  40. ["REDIRECT_HTTP_ACCEPT_LANGUAGE"]=>
  41. string(59) "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2"
  42. ["REDIRECT_HTTP_CACHE_CONTROL"]=>
  43. string(8) "no-cache"
  44. ["REDIRECT_HTTP_CONNECTION"]=>
  45. string(10) "keep-alive"
  46. ["REDIRECT_HTTP_COOKIE"]=>
  47. string(42) "PHPSESSID=5d1dac4ecd19a129494040cd0bee0bfe"
  48. ["REDIRECT_HTTP_HOST"]=>
  49. string(22) "qxu1780990217.my3w.com"
  50. ["REDIRECT_HTTP_PRAGMA"]=>
  51. string(8) "no-cache"
  52. ["REDIRECT_HTTP_UPGRADE_INSECURE_REQUESTS"]=>
  53. string(1) "1"
  54. ["REDIRECT_HTTP_USER_AGENT"]=>
  55. string(73) "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0"
  56. ["REDIRECT_PATH"]=>
  57. string(58) "/bin:/bin/sbin/:/usr/sbin/:/usr/bin/:/usr/local/bin/:/sbin"
  58. ["REDIRECT_QUERY_STRING"]=>
  59. string(0) ""
  60. ["REDIRECT_REMOTE_ADDR"]=>
  61. string(13) "36.24.243.135"
  62. ["REDIRECT_REMOTE_PORT"]=>
  63. string(5) "59458"
  64. ["REDIRECT_REQUEST_METHOD"]=>
  65. string(3) "GET"
  66. ["REDIRECT_REQUEST_URI"]=>
  67. string(11) "/brand.html"
  68. ["REDIRECT_SCRIPT_FILENAME"]=>
  69. string(41) "/usr/home/qxu1780990217/htdocs/brand.html"
  70. ["REDIRECT_SCRIPT_NAME"]=>
  71. string(11) "/brand.html"
  72. ["REDIRECT_SERVER_ADDR"]=>
  73. string(14) "139.129.150.40"
  74. ["REDIRECT_SERVER_ADMIN"]=>
  75. string(32) "webmaster@qxu1780990217.my3w.com"
  76. ["REDIRECT_SERVER_NAME"]=>
  77. string(22) "qxu1780990217.my3w.com"
  78. ["REDIRECT_SERVER_PORT"]=>
  79. string(2) "80"
  80. ["REDIRECT_SERVER_PROTOCOL"]=>
  81. string(8) "HTTP/1.1"
  82. ["REDIRECT_SERVER_SIGNATURE"]=>
  83. string(0) ""
  84. ["REDIRECT_SERVER_SOFTWARE"]=>
  85. string(6) "Apache"
  86. ["REDIRECT_STATUS"]=>
  87. string(3) "200"
  88. ["REDIRECT_UNIQUE_ID"]=>
  89. string(24) "Wt8iggqjzDYAADQ3dj4AAAAK"
  90. ["REDIRECT_URL"]=>
  91. string(11) "/brand.html"
  92. ["REMOTE_ADDR"]=>
  93. string(13) "36.24.243.135"
  94. ["REMOTE_PORT"]=>
  95. string(5) "59458"
  96. ["REQUEST_METHOD"]=>
  97. string(3) "GET"
  98. ["REQUEST_URI"]=>
  99. string(11) "/brand.html"
  100. ["SCRIPT_FILENAME"]=>
  101. string(40) "/usr/home/qxu1780990217/htdocs/index.php"
  102. ["SCRIPT_NAME"]=>
  103. string(10) "/index.php"
  104. ["SERVER_ADDR"]=>
  105. string(14) "139.129.150.40"
  106. ["SERVER_ADMIN"]=>
  107. string(32) "webmaster@qxu1780990217.my3w.com"
  108. ["SERVER_NAME"]=>
  109. string(22) "qxu1780990217.my3w.com"
  110. ["SERVER_PORT"]=>
  111. string(2) "80"
  112. ["SERVER_PROTOCOL"]=>
  113. string(8) "HTTP/1.1"
  114. ["SERVER_SIGNATURE"]=>
  115. string(0) ""
  116. ["SERVER_SOFTWARE"]=>
  117. string(6) "Apache"
  118. ["UNIQUE_ID"]=>
  119. string(24) "Wt8iggqjzDYAADQ3dj4AAAAK"
  120. ["ORIG_PATH_INFO"]=>
  121. string(11) "/brand.html"
  122. ["ORIG_PATH_TRANSLATED"]=>
  123. string(40) "/usr/home/qxu1780990217/htdocs/index.php"
  124. ["PHP_SELF"]=>
  125. string(10) "/index.php"
  126. ["REQUEST_TIME_FLOAT"]=>
  127. float(1524572802.4798)
  128. ["REQUEST_TIME"]=>
  129. int(1524572802)
  130. }

复制代码       发现并没有PATH_INFO,但是有一个ORIG_PATH_INFO
        4、查找php手册,发现

  1. 'ORIG_PATH_INFO'
  2. Original version of 'PATH_INFO' before processed by PHP.

复制代码       即”ORIG_PATH_INFO“是“PATH_INFO”在被PHP处理之前的版本。
        5、最终解决办法

  1. if ( !isset($_SERVER['PATH_INFO']) && isset($_SERVER['ORIG_PATH_INFO']) ) $_SERVER['PATH_INFO'] = $_SERVER['ORIG_PATH_INFO'];

复制代码完美!

pathinfo 伪静态 详细解析PATH_INFO 和 ORIG_PATH_INFO技术分享相关推荐

  1. 资源放送丨《一次特殊的Oralce硬解析性能问题的技术分享》PPT视频

    前段时间,墨天轮邀请云和恩墨SQL优化专家 师庆栋 老师做了<一次特殊的Oralce硬解析性能问题的技术分享>的直播,在这里我们共享一下PPT和视频,供大家参考学习. 日常SQL查询优化常 ...

  2. 2场直播丨Oracle数据库SQL执行计划的取得和解析、一次特殊的 Oralce 硬解析性能问题的技术分享...

    1. Oracle数据库SQL执行计划的取得和解析- 2021.02.23 2月23日(周二)晚八点直播课,Oracle优化资深专家陈晓辉,以专业ORACLE数据库技术支持工程师的角度讲解SQL文的执 ...

  3. 今晚直播丨一次特殊的 Oralce 硬解析性能问题的技术分享

    日常SQL查询优化常常遇到的问题是执行时间较长,解决方式通常是针对执行速度进行优化. 此次分享,我将针对具体项目执行中,遇到SQL优化的特殊故障,展开跟大家进行交流.这次SQL优化出现的问题:与执行速 ...

  4. 明晚直播丨一次特殊的 Oralce 硬解析性能问题的技术分享

    日常SQL查询优化常常遇到的问题是执行时间较长,解决方式通常是针对执行速度进行优化. 此次分享,我将针对具体项目执行中,遇到SQL优化的特殊故障,展开跟大家进行交流.这次SQL优化出现的问题:与执行速 ...

  5. 深度学习目标检测详细解析以及Mask R-CNN示例

    深度学习目标检测详细解析以及Mask R-CNN示例 本文详细介绍了R-CNN走到端到端模型的Faster R-CNN的进化流程,以及典型的示例算法Mask R-CNN模型.算法如何变得更快,更强! ...

  6. celery的使用(最新详细解析)

    celery的使用(最新详细解析) 一. Celery简介 Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统,专注于实时处理的异步任务队列,同时也支持任务调度. Celery的架构由三部 ...

  7. java pathinfo,nginx下支持PATH_INFO的方法实例详解

    本文实例分析了nginx下支持PATH_INFO的方法.分享给大家供大家参考,具体如下: 要想让nginx支持PATH_INFO,首先需要知道什么是pathinfo,为什么要用pathinfo? pa ...

  8. 终端不能联网_详细解析物联网是什么?

    原标题:详细解析物联网是什么? 物联网的英文是Internet of Things,缩写为IoT.这里的"物"指的是我身边一切能与网络联通的物品.例如你带的手表.你骑的共享单车.马 ...

  9. skb详细解析【转】

    skb详细解析[转]  摘自:http://blog.chinaunix.net/uid-30035229-id-4883992.html 在自己的模块发送函数中,需要对skb进行重新构造和别的一些操 ...

  10. mysql 复制 二进制文件命令_Mysql中复制详细解析

    原标题:Mysql中复制详细解析 1.mysql复制概念 指将主数据库的DDL和DML操作通过二进制日志传到复制服务器上,然后在复制服务器上将这些日志文件重新执行,从而使复制服务器和主服务器的数据保持 ...

最新文章

  1. 万词霸屏的本质是什么?
  2. 激光点云感知 voxnet本质
  3. Winform中使用printDocument控件打印pictureBox中的二维码照片
  4. 在Spring中使用Asciidoctor:使用Spring MVC渲染Asciidoc文档
  5. JimuReport积木报表 — API数据源报表制作
  6. 如何成为高级测试人?
  7. [C++再学习系列] 具有链接的C++实体
  8. python pandas series加速原理_python pandas中对Series数据进行轴向连接的实例
  9. 图像语义分割(10)-DeepLabV3+: 用于图像语义分割的带有空洞可分离卷积的编解码结构
  10. bpython3 推送_python3对接聊天机器人API
  11. 如何利用ansible callback插件对执行结果进行解析
  12. pycharm2020版本以上中文版教程
  13. java面试宝典2019
  14. android手机wifi快的办法,手机wifi如何设置网速变快(这样设置网速瞬间堪比5G)...
  15. css实现背景动态效果图
  16. 梯度下降计实例计算(二维)
  17. 家族文化是一项很重要的文化内涵
  18. 机器学习面试题101~200
  19. 【笔记本】解决键盘粘键 -/- 按键自动输入
  20. 不怕神一样的对手就怕猪一样的队友

热门文章

  1. Epicor客制化 - 在VS中进行开发
  2. 计算机之父的童年故事教案,《计算机之父的童年故事》教学设计
  3. python帮室友避险——爬虫加可视化
  4. 关于非诚勿扰百度专场
  5. 来了!Android应用市场64位应用策略
  6. sqli-labs 第八关盲注脚本
  7. [sig19]寒霜引擎中strand-based(基于线)的头发渲染
  8. JavaScript中会打印出undefined的情况汇总
  9. Elasticsearch-查询性能调优
  10. 远程桌面由于以下原因无法连接远程计算机,win10远程桌面提示由于以下原因之一无法连接的解决教程...