首页 > 解决方案 > 301 到无扩展页面,仅当它存在时

问题描述

如果用户访问:

www.example.com/mypage.asp 

我希望它重定向到页面的无扩展版本:

www.example.com/mypage 

但我只想在请求的页面存在时这样做,所以:

www.example.com/mypage.asp-> 301 到 ->www.example.com/mypage
但是www.example.com/notapage.asp-> 404

如何最好地做到这一点.htaccess

标签: .htaccessmod-rewrite

解决方案


您可以在站点根目录 .htaccess 中尝试此规则:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{THE_REQUEST} \s/+(.+?)\.asp[\s?] [NC]
RewriteRule ^ /%1 [R=301,NE,L]

RewriteCond %{REQUEST_FILENAME} -f将确保仅针对现有文件完成此操作。


推荐阅读