PHP $_SERVER['PATH_INFO'] 无法获取到内容怎么办?

飘逸的风12年前 (2014-12-09)程序11395

前段时间做的一个项目,放在Linux服务器下,出现了伪静态无法使用。

由于我对伪静态的判断,是根据$_SERVER['PATH_INFO'] 来决定的,某些Linux环境,无法获取$_SERVER['PATH_INFO'],所以导致伪静态的解析无法完成。

找了很多资料,终于找到了方法,其实很简单,一句话就可以解决:

//修正$_SERVER['PATH_INFO']无法获取
if ( !isset($_SERVER['PATH_INFO']) && isset($_SERVER['ORIG_PATH_INFO']) ) $_SERVER['PATH_INFO'] = $_SERVER['ORIG_PATH_INFO'];

扩展知识:$_SERVER['SCRIPT_NAME']、$_SERVER['PHP_SELF']和$_SERVER['ORIG_PATH_INFO'],这三个服务器全局变量都是获取当前脚本名的。主要看服务器当前环境了。那个存在的就获取那个。

所以对于上面的问题,我就是通过isset(),来进行判断的。OK,问题完美解决,是不是很简单呢?

相关文章

提高PHP编程效率的53个要点

用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说...

分享一个生成sitemap.xml的类

很多站长在做seo优化的时候都会向各大搜索引擎网站提交站点地图sitemap.xml,同样需要提交。于是专门写了一个生成sitemap.xml的类,支持生成在制定目录下,默认生成在网站根目录下。 分...

emlog百度分享插件[提供下载]

emlog百度分享插件[提供下载]

emlog百度分享插件下载地址:bdshare.zip 百度分享概况: 引入社会化流量 用户浏览网站内容时产生的分享行为可以增加网站内容在腾讯空间、新浪微博和人人网等社会化网站的曝光机会...

ecshop搜索热门关键字的调用

码关键字的设定在:后台-商店设置-显示设置--首页搜索的关键词 {if $searchkeywords} {$lang.hot_search} :  {foreach from...

PHP攻击网站防御代码-以及攻击代码反译

这是我无意中攻击一个网站发现的一个代码PHP有效的拦截住我的DDOS  <?php   //查询禁止IP   $ip =$_SERVER['R...

thinkphp 使用U方法自动生成URL超链接

ThinkPHP U方法 U 方法是 ThinkPHP 内置的一个快捷方法,可以根据系统 URL 模式配置动态的生成智能的 URL 地址。 由于 ThinkPHP 支持各种不同的 URL...

评论列表

飘逸的风
12年前 (2014-12-09)

@王语双:哈哈,一般般啦!

王语双
12年前 (2014-12-09)

楼主技术精湛。

飘逸的风 回复:
@王语双:哈哈,一般般啦!
12年前 (2014-12-09)

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。