我有一个静态网站。我想重写任何没有扩展名的网址扩展名为.html的网址。
例如:
如果链接是" example.com/test1" ;,请让服务器找到" example.com/test1.html"但是在地址栏中保留" example.com/test1"在那里展示。
我需要将此重写规则应用于最后没有(。*或/)的任何网址。
我是Apache的初学者。任何帮助将受到高度赞赏。
答案 0 :(得分:1)
您可以打开MultiViews选项,mod_negotiation将执行剩余的工作。但这可能导致一些problems。
答案 1 :(得分:0)
如果它只是HTML扩展名,那么就像:
RewriteEngine On
RewriteCond %{THE_REQUEST} \ /+([^\ \?]+)\.html
RewriteRule ^ /%1 [L,R]
RewriteCond %{DOCUMENT_ROOT}/$1.html -f
RewriteRule ^(.+)$ /$1.html [L]