我的 Apache Web服务器(版本2.4)位于防火墙后面,可从互联网访问。 Web服务器代理对 WSO2 Identity Server 5.0.0 的请求,该请求在默认的 Apache Tomcat (端口9443)中运行。 WSO2 IS用作身份提供商,我的服务提供商是使用被动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
/authenticationendpoint
而不是/sso/authenticationendpoint
。因此,我将${CARBON_HOME}/repository/conf/security/application-authentication.xml
AuthenticationEndpointURL更改为/sso/authenticationendpoint/login.do
。但后来我收到http错误 405 (不允许GET方法)我认为这可能是一个常见的用例(由Apache Webserver代理的Identity Server),但没有找到太多信息。有没有人解决过类似的问题或任何想法?