Dot-Htaccess
隱蔽 mod-rewrite 到 lighttpd 以減少 url 縮短器
我正在嘗試在我的 lighttpd 伺服器上使用 Shaun Inman 的 url 縮短器 lessn,他使用 .htaccess 文件進行重定向。我不太擅長 Mod_Rewrite 是第一位的,否則一些簡單的Google搜尋就足以將其轉換為 lighttpd。事實上,我不知道 Mod_Rewrite 的第 2 行和第 3 行在做什麼,所以我無法轉換。我會很感激任何人對這些的建議,這樣我就可以讓它正常工作。謝謝!
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule (.*) index.php?token=$1 [QSA,L] </IfModule>
這兩行指示 Apache 的 mod_rewrite 不將重寫規則應用於文件系統上物理存在的文件 (f) 和目錄 (d):
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f
很長一段時間以來,lighttpd 不支持這種開箱即用的行為,您必須將 mod_magnet 與 lua 腳本一起使用,如下例所示:
但是,現在似乎有支持:
http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ModRewrite#urlrewrite-repeat-if-not-file
因此,只需在您的 lighttpd.conf 中使用該重寫結構,例如:
url.rewrite-if-not-file = ( "^/(.*)$" => "/index.php?q=$1" )
希望這會有所幫助,祝你好運!