2016-08-02 55 views
0

我已經從Apache 2.2升級到2.4,除了一種我的URL重寫規則之外的所有類型都按預期工作。看來以下規則不起作用。爲了安全起見,我刪除了IP地址。Apache HTTPD 2.4 URL重寫規則

RequestHeader未設置授權 RewriteEngine敘述在 重寫規則/xmldb/VATIncidentPoint/(.*)$ http://x.x.x.x:8080/exist/rest/db/VATIncidentPoint/ $ {user2group:%{LA-U:REMOTE_USER}}/$ 1 [P]

這似乎發生了什麼是包含user2group的部分不會被用戶所屬的組取代。這會導致網址末尾出現2個斜槓,而不是被組「//」取代。在2.4中有沒有不同的方式比2.2中有這種做法?

提前致謝!

+0

*更新* - 爲mod_rewrite啓用日誌記錄後,我能夠看到REMOTE_USER變量沒有被設置。這就是爲什麼user2group映射中的查找失敗。任何想法爲什麼這個變量不適用於Apache 2.4。我知道它適用於2.2,我在這裏閱讀使用它:http://httpd.apache.org/docs/current/mod/mod_rewrite.html –

回答

0

問題是在Location塊中有2個require語句。

要求所有批准,並需要有效的用戶

這是造成REMOTE_USER值永遠不會擡頭,因此造成什麼可從地圖返回。刪除'要求所有授予'並且'需要有效用戶'解決了這個問題。