.htaccess文件域名重定向

明天于使用.htaccess做伪静态的时刻,暴发同样桩怪事,URL里设有C++时会发生问题,在拍卖C++这些词的当儿,无论如何,$_GET都得不交++,只好得到C空格.

###### always access from www and redirect multiple doamins to one

rewriteCond %{http_host} ^domain\.com$ [OR]
rewriteCond %{http_host} ^domain\.org$ [OR]
rewriteCond %{http_host} ^www\.domain\.org$ [OR]
rewriteCond %{http_host} ^subdomain\.domain\.org$ [OR]
rewriteCond %{http_host} ^www\.subdomain\.domain\.org$ [NC]
rewriteRule ^(.*)$ http://www.domain.com/$1 [r=301,L]

######always access from non-www and redirect multiple doamins to one

rewriteCond %{http_host} ^www\.domain\.com$ [NC]
rewriteRule ^(.*)$ http://domain.com/$1 [r=301,L]

一律开端我以为是没因而urlencode处理,后来意识真正处理了,后台经过排查,确定是rewrite的问题,因为于单文件的条件是好落C++这多少个词的,当然,是通过了urlencode的.

因:rewrite得不交c++这一个词,是盖APACHE在博参数后,自行做了urldecode处理,导致力不从心取C++中之加号部分

 

决方案如今只是望了一如既往种植,在PHP的官网上为爆发记载,在拍卖c++时,举办简单坏urlencode处理,即urlencode(urlencode(‘C++’)),这样还rewrite的下,就可拿走C++这些词了.

沾满PHP.NET上之具体地址 http://www.php.net/urlencode

图片 1

 

发表评论

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

网站地图xml地图