在 Apache 2.2 中的 LocationMatch 指令中使用 JkMount

在 Apache 2.2 中的 LocationMatch 指令中使用 JkMount

我使用的是 Debian Wheezy 和 Apache 2.2.2。我之前使用以下方法將所有請求VirtualHost轉發到 Tomcat:

JkMount / ajp13_worker
JkMount /* ajp13_worker

現在,我想foo從此設定中排除一個特定的 URL 前綴,但保留它。我嘗試使用LocationMatch以下指令:

<LocationMatch "^/(?!foo)">
    # JkMount commands
</LocationMatch>

如果按原樣使用,我會收到以下錯誤訊息:

JkMount can not have a path when defined in a location

但如果我嘗試使用JkMount ajp13_worker,則會收到錯誤訊息:

JkMount context should start with /

如何僅針對不以 開頭的 URL 獲得正確的行為/foo

答案1

JkMount 的替代方案:

<LocationMatch "^/(?!foo)">
   SetHandler jakarta-servlet
   SetEnv JK_WORKER_NAME ajp13_worker
</LocationMatch>

相關內容