URL Rewrite 写在.htaccess和httpd.conf中,对php的$_SERVER变量的影响

如题所述

例,重写规则为:

RewriteRule ^show/(\d+)(/?)$                show.php?id=$1

当地址栏输入 http://www.d5s.cn/show/18 的时候,

重写规则,写在.htaccess中,

$_SERVER['PHP_SELF'] = /show.php?id=18

重写规则,写在httpd.conf中,

$_SERVER['PHP_SELF'] = /show/18

如果有需要从 $_SERVER['PHP_SELF'] 变量中取值的时候,需要注意这两者写法的区别。

此条目发表在 服务器&PC 分类目录。将固定链接加入收藏夹。

URL Rewrite 写在.htaccess和httpd.conf中,对php的$_SERVER变量的影响》有 3 条评论

  1. JulyClyde 说:

    今天我也遇见这个问题了,正巧搜索到你的主页;用apache2 for windows就没事。怀疑是ubuntu里的bug。你用的也是ubuntu吗?

    • owen 说:

      不是ubuntu的bug,是 .htaccess 和 httpd.conf 转发规则是有本质的区别,是这个造成了 $_SERVER 变量中,路径参数的不同

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>