5 rewrite .htaccess 301-redirect apache-2.2
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
...导致从“www 到非 www”的完美的非硬编码 301 重定向,完全相反的情况会是什么样子?
编辑:
根据 Prix 的帖子,我已将.htaccess
文件更改为以下内容:
Options +FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
如前所述,http://www./
不幸的是,这重定向到。谁能帮忙?
普利克斯差点就获得了。当您否定RewriteCond
(with !
) 时,它不会捕获,因此%1
为空。两种可能的解决方案:
假的RewriteCond
:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(.+)$ [NC]
RewriteRule ^/(.*)$ http://www\.%1/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
%{HTTP_HOST}
在RewriteRule
:
RewriteCond %{HTTP_HOST} !^www\.(.+)$ [NC]
RewriteRule ^/(.*)$ http://www\.%{HTTP_HOST}/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15527 次 |
最近记录: |