htaccess - 将旧域重定向到新域,但有异常
htaccess - redirect old domain to new with exception
htaccess - 将旧域重定向到新域,但出现异常
我有一个旧域:www.olddomain.com,有 URL 个文件:1.php、2.php 和 3.php
我想将 www.olddomain.com 重定向到 www.newdomain.com,但除了 3.php 应该自动 redirected/renamed 到 4.php重定向后,即:
www.olddomain.com/3.php => www.newdomain.com/4.php
其余同理:
www.olddomain.com/1.php => www.newdomain.com/1.php
www.olddomain.com/2.php => www.newdomain.com/2.php
RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$
Redirect /3.php /4.php[N]
RewriteRule (.*)$ https://www.newdomain.com/ [R=301,L]
当然不是我想要的那样,请帮忙。
在通用重定向规则之前有特定的重定向:
RewriteEngine on
# redirect 3.php
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteRule ^3\.php$ https://www.newdomain.com/4.php [L,NC,R=301]
# redirect everything else
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteRule ^ https://www.newdomain.com%{REQUEST_URI} [R=301,L,NE]
尝试:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteCond %{REQUEST_URI} ^\/3\.php [NC] #usually use NC if using Windows
RewriteRule ^ https://www.newdomain.com/4.php [R=301,L]
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteCond %{REQUEST_URI} !\/3\.php [NC] #usually use NC if using Windows
RewriteRule ^(.*)$ https://www.newdomain.com/ [R=301,L]
#or if it adds two slashes use https://www.newdomain.com
htaccess - 将旧域重定向到新域,但出现异常
我有一个旧域:www.olddomain.com,有 URL 个文件:1.php、2.php 和 3.php 我想将 www.olddomain.com 重定向到 www.newdomain.com,但除了 3.php 应该自动 redirected/renamed 到 4.php重定向后,即:
www.olddomain.com/3.php => www.newdomain.com/4.php
其余同理:
www.olddomain.com/1.php => www.newdomain.com/1.php
www.olddomain.com/2.php => www.newdomain.com/2.php
RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$
Redirect /3.php /4.php[N]
RewriteRule (.*)$ https://www.newdomain.com/ [R=301,L]
当然不是我想要的那样,请帮忙。
在通用重定向规则之前有特定的重定向:
RewriteEngine on
# redirect 3.php
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteRule ^3\.php$ https://www.newdomain.com/4.php [L,NC,R=301]
# redirect everything else
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteRule ^ https://www.newdomain.com%{REQUEST_URI} [R=301,L,NE]
尝试:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteCond %{REQUEST_URI} ^\/3\.php [NC] #usually use NC if using Windows
RewriteRule ^ https://www.newdomain.com/4.php [R=301,L]
RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteCond %{REQUEST_URI} !\/3\.php [NC] #usually use NC if using Windows
RewriteRule ^(.*)$ https://www.newdomain.com/ [R=301,L]
#or if it adds two slashes use https://www.newdomain.com