Apache-2.4
將 Apache 授權標頭規則遷移到 Lighttpd
我的 Web 伺服器多年來一直使用 lighttpd 和 PHP-FPM 執行 PHP 應用程序。現在,在第 3 方軟體升級後,我必須包含一些規則才能啟動 REST API。
<IfModule mod_setenvif.c> SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0 </IfModule> <IfModule mod_rewrite.c> Options -MultiViews RewriteEngine On RewriteBase /api/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] </IfModule>
我想了解它在做什麼,如果支持的話,我會根據 lighttpd 配置重寫它。
設置 HTTP_AUTHORIZATION (“CGI”) 環境變數應該作為 CGI 設置的一部分進行(標頭
HTTP_...
以 .重寫配置重寫所有不針對
/api/
子路徑中的靜態文件或目錄的請求。不使用的 lighttpd (1.4.24+
)中最接近的mod_magnet
是:url.rewrite-if-not-file = ( "^/api/" => "/api/index.php" )
這也將觸發目錄(只有正常文件不會被重寫),但我認為您實際上不太可能需要
/api/
路徑中的目錄列表,所以它可能沒問題。