即使在這個論壇中,我發現至少有一打這個錯誤的條目,還有很多外部的。基本上都說在<Directory></Directory>
裏面,我有「拒絕所有」指令,並且沒有「允許」指令。由tomcat服務器配置拒絕的客戶端
我無法編寫一個固定的目錄進行匹配,因爲它是由後端tomcat服務器實時創建的。
當我進入 「myUrl /測試/請求/ USER1/1234567890 /下載」,我得到
403禁止:您沒有權限訪問/測試/請求/ USER1/1234567890 /下載。
httpd的錯誤日誌顯示:
[error] [client xxx.xx.xx.xxx] client denied by server configuration: /data/test, referer: myUrl/test/request/user1/1234567890
的部分以「test」開始由後端的Tomcat,其中「用戶1」和「1234567890」變化創建的,而該目錄的其它部分結構保持不變。
在我的httpd.conf,我有:
<VirtualHost *:80>
DocumentRoot /data
---
---
RewriteRule ^/test - [L]
---
</VirtualHost>
如何解決這個問題?即使我創建了另一個文件並創建另一個文檔根目錄,我也需要一個正則表達式。外面某處,我試過這個:
<Directory "/data/test/request/*/*/download">
Options -Indexes -FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
但是沒有成功。
我正在使用「ajp」與後端tomcat對話,並且有必要的模塊,我可以telnet後端tomcat服務器(在8009上)。所以它不應該是ajp通信問題。
上面的url中的「測試」片段實際上是tomcat中的/ webapps目錄內的「上下文」。在「測試」上下文中的所有者是tomcat,但我已經爲每個人添加了讀取權限。