.htaccess RedirectMatch 语法
.htaccess RedirectMatch Syntax
我正忙于尝试使 301 重定向的语法正确。我已经在网上进行了很多研究,但是由于我对此完全陌生,所以它并没有为我点击。我希望这里有人可以提供帮助。
我正在输入以编写一个规则,该规则将使用以下格式更改所有链接:
http://www.example.com/yyyy/mm/dd/page-name
至
http://www.example.com/category/page-name
在上面的示例中,“/yyyy/mm/dd/”对于任意数量的日期都是可变的。这是一个 Wordpress 迁移,新主题不允许我们保留永久链接的日期和名称格式,我们正在努力保留几年的 SEO "link juice."
出于各种原因,我更愿意使用 301 重定向而不是重写来执行此操作。提前致谢!
编辑添加:这是我的尝试,我想我有重写和重定向的混合语法(除其他外):
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ /category//
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ /category/ [L,R=301,NC]
我似乎已经开始使用它了:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RedirectMatch 301 ^/[0-9]{4}/[0-9]{2}/[0-9]{2}/(.*)$ http://www.example.com/category//
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
感谢所有回复的人,至少帮助我缩小了范围。
我正忙于尝试使 301 重定向的语法正确。我已经在网上进行了很多研究,但是由于我对此完全陌生,所以它并没有为我点击。我希望这里有人可以提供帮助。
我正在输入以编写一个规则,该规则将使用以下格式更改所有链接:
http://www.example.com/yyyy/mm/dd/page-name
至
http://www.example.com/category/page-name
在上面的示例中,“/yyyy/mm/dd/”对于任意数量的日期都是可变的。这是一个 Wordpress 迁移,新主题不允许我们保留永久链接的日期和名称格式,我们正在努力保留几年的 SEO "link juice."
出于各种原因,我更愿意使用 301 重定向而不是重写来执行此操作。提前致谢!
编辑添加:这是我的尝试,我想我有重写和重定向的混合语法(除其他外):
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ /category//
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ /category/ [L,R=301,NC]
我似乎已经开始使用它了:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RedirectMatch 301 ^/[0-9]{4}/[0-9]{2}/[0-9]{2}/(.*)$ http://www.example.com/category//
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
感谢所有回复的人,至少帮助我缩小了范围。