我的 Apache Webserver (版本2.4)位于防火墙后面,可从互联网访问 . Web服务器将请求代理到 WSO2 Identity Server 5.0.0 ,该请求在默认 Apache Tomcat (端口9443)中运行 . WSO2 IS用作身份提供者,我的服务提供者是使用 passive STS 进行身份验证的应用程序 . 现在我希望WSO2 IS可用于 /sso 而不是根级 / ,因为此Apache Web服务器也映射了不同的其他应用程序 .

Apache站点配置(代码段) . Apache正在侦听端口443(启用SSL)

<Location /sso >
    ProxyPass https://localhost:9443/sso
    ProxyPassReverse https://localhost:9443/sso
</Location>

${CARBON_HOME}/repository/conf/carbon.xml 的变化

<WebContextRoot>/sso</WebContextRoot>

${CARBON_HOME}/repository/conf/tomcat/catalina-server.xml 的变化

<Connector  protocol="org.apache.coyote.http11.Http11NioProtocol"
            port="9443"
            proxyPort="443"
            proxyName="my.ssosystem.com"
            bindOnInit="false"
            sslProtocol="TLS"
            maxHttpHeaderSize="8192"
            acceptorThreadCount="2"
            maxThreads="250"
            minSpareThreads="50"
            disableUploadTimeout="false"
            enableLookups="false"
            connectionUploadTimeout="120000"
            maxKeepAliveRequests="200"
            acceptCount="200"
            server="WSO2 Carbon Server"
            clientAuth="false"
            compression="on"
            scheme="https"
            secure="true"
            SSLEnabled="true"
            compressionMinSize="2048"
            noCompressionUserAgents="gozilla, traviata"
            compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg"
            URIEncoding="UTF-8"/>

现在我有几个问题

  • 请求 /sso/passivests 将我重定向到碳管理员登录( /sso/carbon/admin/login.jsp ),而 302 改为 /sso/commonauth

  • 以管理员身份登录WSO IS之后,它按预期工作,但后来我被 302 重定向到 /authenticationendpoint 而不是 /sso/authenticationendpoint . 所以我在 ${CARBON_HOME}/repository/conf/security/application-authentication.xml 中将AuthenticationEndpointURL更改为 /sso/authenticationendpoint/login.do . 但后来我收到http错误 405 (不允许GET方法)

我认为这可能是一个常见的用例(由Apache Webserver代理的Identity Server),但没有找到太多信息 . 有人解决了类似的问题或任何想法吗?