這是我的情況:
的WebSocket與Apache mod_proxy_wstunnel到Tomcat javax.servlet.request.X509Certificate
瀏覽器< --- HTTPS/WSS --->的Apache的httpd < --- HTTP/WS- - > Tomcat(v7)
是否有可能使用mod_proxy_wstunnel反向代理在Servlet過濾器中獲取javax.servlet.request.X509Certificate?這就是我的配置:
ProxyPass /ws ws://space4-20.<***>.ch:8080/ws nofailover=On ProxyPassReverse /ws ws://space4-20.<***>.ch:8080/ws ProxyPass/ajp://space4-20.<***>:8009/ nofailover=On ProxyPassReverse/ajp://space4-20.<***>:8009/
如果我直接連接到Tomcat(不阿帕奇)我可以這樣訪問:
request.getAttribute("javax.servlet.request.X509Certificate");
但與反向代理我沒有任何屬性。 這可能是因爲在Apache和Tomcat之間沒有SSL?但據我瞭解這並不重要,因爲如果我做了一個正常的HTTPS請求,我得到了tomcat中的所有SSL信息。我認爲這是因爲我有這個:
SSLOptions +StdEnvVars +ExportCertData
但我認爲mod_proxy_wstunnel不使用該配置。
有人可以幫我嗎? 提前謝謝!