Java jetty透明代理始终返回403禁止
我正在尝试使用jetty提供的透明代理 这是我的web.xmlJava jetty透明代理始终返回403禁止,java,maven,proxy,jetty,transparentproxy,Java,Maven,Proxy,Jetty,Transparentproxy,我正在尝试使用jetty提供的透明代理 这是我的web.xml <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="WebApp_9" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.c
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="WebApp_9"
version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>googleProxy</servlet-name>
<servlet-class>org.eclipse.jetty.servlets.ProxyServlet$Transparent</servlet-class>
<init-param>
<param-name>ProxyTo</param-name>
<param-value>http://www.google.com</param-value>
</init-param>
<init-param>
<param-name>Prefix</param-name>
<param-value>/google</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>googleProxy</servlet-name>
<url-pattern>/google/*</url-pattern>
</servlet-mapping>
为此:
http://www.google.com/search?q=hello
但当我在浏览器中尝试该url时,我总是得到以下结果:
HTTP ERROR: 403
FORBIDDEN
RequestURI=/JettyProxySample/google/search
Powered by Jetty://
有什么想法吗?只是想在这里给出一个答案,不要使用已有多年历史的里程碑版本
- 7.6.7.v20120910用于码头7
- 8.1.7.v20120910用于码头8
我知道很多人在这两个版本中都成功地使用了代理servlet,只是从codehaus到eclipse的最初迁移中没有这样做……当时有大量的代码流失,所以如果这对您来说不正常,我不会感到惊讶。阅读源代码有帮助。:) 问题是,您没有将代理servlet设置在web的根目录下 服务器,但在应用程序内部,因此前缀参数需要 包含整个前缀,包含web应用程序的上下文名称 前缀/YOUR\u WEB\u APP\u CONTEXT/google
为什么要使用透明代理。IP地址是什么?@Roman C我只是想知道如何使用它。对不起,你说的“IP地址”是什么意思?对于这个问题,你需要阅读DoCu。对于这样一个简单的用例,我会考虑使用S笑Y的HTTP代理servlet:
http://www.google.com/search?q=hello
HTTP ERROR: 403
FORBIDDEN
RequestURI=/JettyProxySample/google/search
Powered by Jetty://