
我正在託管一個 git apache 伺服器,我需要使用 ScriptAlias 觸發一個腳本。我想知道是否可以以這種方式使用 ScriptAlias,因此https://domain
只有在有針對 DocumentRoot (例如)的 GET 請求時才會觸發它:
ScriptAlias / /path/to/script
不幸的是,這不起作用,所以我的解決方法是使用
ScriptAlias /git /path/to/script
(git 只是一個佔位詞)這意味著我的 git 儲存庫位置將是 有https://domain/git/foo/bar.git
沒有辦法將其簡化為https://domain/foo/bar.git
?
非常感謝
編輯:更簡潔
我想將 URL 對應https://domain/
到檔案系統中的 cgi 腳本(在 DocumentRoot 目錄之外)。而且ScriptAlias / /path/to/script
似乎不起作用。
答案1
指令ScriptAlias
做了兩件事:
- 第一個與該指令本質上相同
Alias
,它將 URL 映射到檔案系統路徑,該路徑通常不是DocumentRoot
. - 第二個是它將該目錄標記為包含 CGI 腳本的目錄。
當 CGI 腳本已經存在時,DocumentRoot
您不需要該Alias
功能且ScriptAlias
不需要使用 a ,您只需要執行第二個操作:
<Location "/">
SetHandler cgi-script
Options +ExecCGI
</Location>