有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java简单代理Apache Tomcat

我的意图很简单,我想打个例子。com并重定向到示例。com:8080/myapp

例如。com:8080/myapp是一款java/tomcat应用程序

   <VirtualHost *:80>
    ServerName example.com

    ProxyRequests Off
    <Proxy *>
            Order deny,allow
            Allow from all
    </Proxy>

    ProxyPass / http://example.com:8080/myapp/
    ProxyPassReverse / http://example.com:8080/myapp/

    <Location />
            Order deny,allow
            Allow from all
    </Location>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    LogLevel info

    CustomLog ${APACHE_LOG_DIR}/access.log combined

   </VirtualHost>

结果是当我输入http://example.com时,它被重定向到示例。com:8080/myapp/myapp

我的文件服务器。来自Tomcat的xml有以下说明:

  Connector port="8080" protocol="HTTP/1.1"
       connectionTimeout="20000"
       URIEncoding="UTF-8"
       proxyPort="80" proxyName="example.com"

我错过了什么


共 (1) 个答案

  1. # 1 楼答案

    Proxypass更改服务器名称部分,但不更改ressource id部分:

    而不是:

    ProxyPass / http://example.com:8080/myapp/
    ProxyPassReverse / http://example.com:8080/myapp/
    

    使用:

    ProxyPass / http://example.com:8080/
    ProxyPassReverse / http://example.com:8080/
    

    编辑:

    然后加上:

    RewriteEngine on
    RewriteRule ^/$ /myapp [PT]