我目前有以下作为我的静态文件的htaccess规则,它可以正常工作。
http://mywebsite.local/en/testing-page
从cached_pages/en/testing-page.html
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{DOCUMENT_ROOT}/cached_pages/%{REQUEST_URI}\.html -s
RewriteRule .* cached_pages/%{REQUEST_URI}\.html [L]
我的服务器还将索引文件写为cached_pages / en.html,这是正确的。但是,需要使用什么htaccess RewriteCond和RewriteRule行指向该文件,因此http://mywebsite.local/en/
从cached_pages/en.html
获取页面
RewriteCond %{REQUEST_METHOD} GET
???????????
???????????
请注意该网址末尾有 / ,所以它并不像我想象的那样直截了当。
那么,如何使用斜杠结束为url工作的rewriterules呢?
答案 0 :(得分:1)
最简单的方法是使用附加的斜杠/
复制现有规则,并将其锚定在^
和$
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{DOCUMENT_ROOT}/cached_pages/$1\.html -s
RewriteRule ^(.+)$ cached_pages/$1\.html [L]
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{DOCUMENT_ROOT}/cached_pages/$1\.html -s
RewriteRule ^(.+)/$ cached_pages/$1\.html [L]