2017-04-25 125 views
1

我试图设置一个permanet 301重定向从我的网站的所有非https和www版本到https版本,同时使所有的移动流量重定向到位于一个子.htaccess https 301重定向+移动站点重定向

手机版阅读一些教程后,我能够组装这个(工作):

RewriteEngine on 
RewriteBase/

RewriteCond %{HTTPS} off    [OR] 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^https:// site here [R=301,L,NE] 


RewriteCond %{QUERY_STRING} (^|&)m=0(&|$) 

RewriteRule^- [CO=mredir:0:https:// site here] 

RewriteCond %{HTTP:x-wap-profile} !^$ [OR] 
RewriteCond %{HTTP:Profile}  !^$ [OR] 
RewriteCond %{HTTP_USER_AGENT} "acs|alav|alca|amoi|audi|aste|avan|benq|bird|blac|blaz|brew|cell|cldc|cmd-" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "dang|doco|eric|hipt|inno|ipaq|java|jigs|kddi|keji|leno|lg-c|lg-d|lg-g|lge-" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "maui|maxo|midp|mits|mmef|mobi|mot-|moto|mwbp|nec-|newt|noki|opwv" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "palm|pana|pant|pdxg|phil|play|pluc|port|prox|qtek|qwap|sage|sams|sany" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "sch-|sec-|send|seri|sgh-|shar|sie-|siem|smal|smar|sony|sph-|symb|t-mo" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "teli|tim-|tosh|tsm-|upg1|upsi|vk-v|voda|w3cs|wap-|wapa|wapi" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "wapp|wapr|webc|winw|winw|xda|xda-" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "up.browser|up.link|windowssce|iemobile|mini|mmp" [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} "symbian|midp|wap|phone|pocket|mobile|pda|psp" [NC] 
RewriteCond %{HTTP_USER_AGENT} !macintosh [NC] 


RewriteCond %{HTTP_HOST}   !^m\. 

RewriteCond %{QUERY_STRING} !(^|&)m=0(&|$) 


RewriteCond %{HTTP_COOKIE}  !^.*mredir=0.*$ [NC] 


RewriteRule^https://m. site here [R,L] 

RewriteCond %{HTTP_USER_AGENT} libwww-perl.* 
RewriteRule .* – [F,L] 

该脚本的作品,但我的问题是,它会创建2个登陆页面重定向(http,www ---> https AND https:// --->https://m),这会减慢进程并对seo造成不良影响。

有人能指点我一个很好的解决方案,将所有移动流量重定向到https://m。和一切为https:// ...

我也曾尝试使用PHP标题来解决这个问题,但它创造了同样的问题

任何帮助,不胜感激!

谢谢!

回答

0

您的.htacces会首先从http重定向到https。然后进行移动流量的重定向。这导致了非https移动流量的两个重定向。

如果您首先执行移动重定向,它应该只在所有情况下都有一个重定向。

+0

谢谢你解决了重定向问题。 –