htaccess 使用动态子域、协议将 301 重定向到新的 url
htaccess Redirect 301 to new url with dynamic subdomain,protocol
我想像这样将旧 url 重定向到新 url:
Redirect 301 www.domain.ro/index.php www.domain.ro/
但就我而言,我有一个动态子域,但我不知道如何构建该行:
Redirect 301 www.domain.subsdomain.ro/index.php www.domain.subsdomain.ro/
现在,除了子域是动态的,协议也可以是 http 或 https,用户可以输入 www 或不输入 www,所以该行看起来像:
Redirect 301 domain.{*}.ro/index.php domain.{*}.ro/
{*} - 匹配点之间每个字母字符的通配符
当目标与源相同时,您不必在目标中使用域名URL。此外,您甚至不能在 Redrect
指令中使用主主机名。
只需使用此规则使用 mod_rewrite
删除 index.php
:
RewriteEngine On
RewriteCond %{THE_REQUEST} /index\.php[?\s] [NC]
RewriteCond %{REQUEST_URI} ^(.*/)index\.php$ [NC]
RewriteRule ^ %1 [L,R=301,NE]
我想像这样将旧 url 重定向到新 url:
Redirect 301 www.domain.ro/index.php www.domain.ro/
但就我而言,我有一个动态子域,但我不知道如何构建该行:
Redirect 301 www.domain.subsdomain.ro/index.php www.domain.subsdomain.ro/
现在,除了子域是动态的,协议也可以是 http 或 https,用户可以输入 www 或不输入 www,所以该行看起来像:
Redirect 301 domain.{*}.ro/index.php domain.{*}.ro/
{*} - 匹配点之间每个字母字符的通配符
当目标与源相同时,您不必在目标中使用域名URL。此外,您甚至不能在 Redrect
指令中使用主主机名。
只需使用此规则使用 mod_rewrite
删除 index.php
:
RewriteEngine On
RewriteCond %{THE_REQUEST} /index\.php[?\s] [NC]
RewriteCond %{REQUEST_URI} ^(.*/)index\.php$ [NC]
RewriteRule ^ %1 [L,R=301,NE]