今天在运用.htaccess做伪静态的时刻,发作一件怪事,URL里存在C++时会有题目,在处置惩罚C++这个词的时刻,无论如何,$_GET都得不到++,只能获得C空格.
一开始我以为是没用urlencode处置惩罚,厥后发明确确实实处置惩罚了,背景经由排查,确定是rewrite的题目,由于在单文件的环境是能够获得C++这个词的,固然,是经由了urlencode的.
缘由:rewrite得不到c++这个词,是由于APACHE在获得参数后,自行做了urldecode处置惩罚,致使没法获得C++中的加号部份
决计划现在只看到了一种,在PHP的官网上也有纪录,在处置惩罚c++时,举行两次urlencode处置惩罚,即urlencode(urlencode('C++')),如许再rewrite的时刻,就能够获得C++这个词了.
附上PHP.NET上的具体地址 http://www.php.net/urlencode
相干教程:PHP视频教程
以上就是Apache用.htaccess文件重定向后,URL的加号没法剖析的处置惩罚办法的细致内容,更多请关注ki4网别的相干文章!