从apache readwrite URL切断.html

时间:2017-01-06 00:35:12

标签: apache .htaccess redirect mod-rewrite

我有以下规则 -

RewriteCond %{HTTP_HOST} ^oldsite\.com$ [NC]
RewriteRule   ^(.*)$  https://www.example.com/es/archivo/blog%{REQUEST_URI} [R=301,L]

唯一的问题是重写的URL最后有一个.html,所以它看起来像 - https://www.example.com/es/archivo/blog/......something.html

我怎样才能将最后的.html剪掉?我试过这个 -

RewriteRule   ^(.*)\.html$  https://www.example.com/es/archivo/blog%{REQUEST_URI} [R=301,L]

我希望最终的网址看起来像

https://www.example.com/es/archivo/blog/......something

而不是

https://www.example.com/es/archivo/blog/......something.html

1 个答案:

答案 0 :(得分:1)

您需要在目标中使用匹配模式中捕获的值,如下所示:

RewriteCond %{HTTP_HOST} ^oldsite\.com$ [NC]
RewriteRule ^(.+)\.html$ https://www.example.com/es/archivo/blog/$1 [R=301,L,NC,NE]

在测试此更改之前清除浏览器缓存。