我需要像这样重定向网址:
http://domain.com/2014/08/post1-url.html
http://domain.com/2014/05/post2-url.html
http://domain.com/2013/04/post3-url.html
为:
http://domain.com/post1-url
http://domain.com/post2-url
http://domain.com/post3-url
任何人都可以帮助并告诉我在.htaccess
文件中需要写什么吗?谢谢!
我尝试了这个,但它不起作用(前6行来自wordpress)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^domain.com/(.*)/(.*)/(.*)\.html$ domain.com/$3 [R=301,L]
</IfModule>
答案 0 :(得分:2)
您可以使用:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^\d{4}/\d{2}/(.+?)\.html$ /$1 [R=301,L,NE,NC]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
您的正则表达式不正确,因为您无法匹配RewriteRule
中的主机名。