Linux

無法找出 htaccess 規則

  • February 24, 2019

我的 htaccess 中有這個,但不知道它的用途。由於規則的性質,搜尋也無濟於事。

RewriteCond %{REQUEST_URI} !(/$|\.)
RewriteRule (.*) %{REQUEST_URI}/ [R=301]

誰能解釋一下它的用途?

這個規則所做的就是在/你的 URLS 中添加一個尾隨,如果沒有,如果.URI 中沒有,那麼https://example.org/test將被重定向到https://example.org/test/,但https://example.org/test.html不會被重寫https://example.org/test.html/(但注意:https://example.org/test.case/folder不會被重定向到,https://example.org/test.case/folder/因為它包含.URI 中的a )。

## Do the following if the URI does not end with `/` or  does not contain an `.`: 
## the . is relevant for file names like test.html, which should n 
RewriteCond %{REQUEST_URI} !(/$|\.)

## Redirect it to the original URI with an added `/` and mark this as permanent:
RewriteRule (.*) %{REQUEST_URI}/ [R=301]

引用自:https://serverfault.com/questions/955402