Can';t登录负载平衡器后面的WSO2碳

Can';t登录负载平衡器后面的WSO2碳,wso2,wso2is,Wso2,Wso2is,我有一个WSO2IS 5.0.0实例在负载平衡器后面的VM上运行。负载平衡器侦听端口443上的HTTPS,处理所有SSL并将普通HTTP转发到端口80上的VM 我已将WSO2IS实例配置为在catalina-server.xml中的端口80上只有一个HTTP连接器,并将配置中可以找到的所有URL配置为使用HTTPS指向负载平衡器 我可以通过443 fine上的负载平衡器访问carbon webapp。但是,当我成功登录时,webapp会在端口80上返回到HTTP的重定向,而不是在端口443上返回

我有一个WSO2IS 5.0.0实例在负载平衡器后面的VM上运行。负载平衡器侦听端口443上的HTTPS,处理所有SSL并将普通HTTP转发到端口80上的VM

我已将WSO2IS实例配置为在catalina-server.xml中的端口80上只有一个HTTP连接器,并将配置中可以找到的所有URL配置为使用HTTPS指向负载平衡器

我可以通过443 fine上的负载平衡器访问carbon webapp。但是,当我成功登录时,webapp会在端口80上返回到HTTP的重定向,而不是在端口443上返回它应该返回的HTTPS。这使得碳网络应用程序无法使用

如果我在catalina-server.xml中更改HTTP连接器中的proxyPort,它会返回到端口443的重定向-但URL是纯HTTP,而不是HTTPS,因此仍然失败

即使tomcat本身正在通过HTTP进行监听,我如何告诉carbon发送一个重定向到HTTPS


提前谢谢

在这种情况下,您可以使用代理端口

您可以在tomcat/catalina-server.xml中配置2个连接器,如下所示。http url仍将重定向到https url。你是说管理控制台是webapp吗

 <Connector  protocol="org.apache.coyote.http11.Http11NioProtocol"
                port="9763"
                proxyPort="80"
                bindOnInit="false"
                maxHttpHeaderSize="8192"
                acceptorThreadCount="2"
                maxThreads="250"
                minSpareThreads="50"
                disableUploadTimeout="false"
                connectionUploadTimeout="120000"
                maxKeepAliveRequests="200"
                acceptCount="200"
                server="WSO2 Carbon Server"
                compression="on"
                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"/>

    <Connector  protocol="org.apache.coyote.http11.Http11NioProtocol"
                port="9443"
                proxyPort="443"
                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"/>

您应该在etc/hosts文件中具有到负载平衡器的映射,如下所示:

is.50.com

在您的负载平衡器中,您应该具有以下功能。例如,apache2

<Virtualhost *:443>
        ServerName is.50.com
        ServerAlias is.50.com
        ProxyPreserveHost On
        SSLEngine On
        SSLProxyEngine On
        SSLProxyVerify none
        SSLProxyCheckPeerCN off
        SSLProxyCheckPeerName off
        SSLCertificateFile /etc/apache2/ssl/apache.crt
        SSLCertificateKeyFile /etc/apache2/ssl/apache.key

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

stickysession=JSESSIONID


ProxyPass / https://<carbonIP>:<port>/
ProxyPassReverse / https://<carbonIP>:<port>/

</Virtualhost>

服务器名是.50.com
ServerAlias.50.com
代理主机
斯伦金安
SSLProxyEngine打开
SSLProxyVerify无
SSLProxyCheckPeerCN关闭
SSLProxyCheckPeerName关闭
SSLCertificateFile/etc/apache2/ssl/apache.crt
SSLCertificateKeyFile/etc/apache2/ssl/apache.key
命令拒绝,允许
通融
stickysession=jsSessionId
ProxyPass/https://:/
ProxyPassReverse/https://:/
然后您的访问URL将如下所示


这将重定向到https。

感谢您的及时回复!是的,我指的是管理控制台webapp。您的示例是通过HTTPS从负载平衡器连接到服务器。我想使用从负载平衡器到服务器的普通HTTP,只需从负载平衡器向公众提供HTTPS,以避免在服务器上运行不必要的加密,这将导致大量流量。您知道如何做到这一点吗?通过在catalina-server.xml中配置HTTPs,它将只分配9443端口。因此,您无法避免使用https端口。您还可以通过在carbon.xml中启用lower属性来尝试另一个选项。这样,您就可以通过http使用管理控制台。但是,除非在catalina-server.xml中启用https,否则重定向到https将无法工作。你可以关注这篇博文[1]。是的,这很有效!我发现我还必须在carbon.xml中启用“*”,并在catalina-server.xml的连接器配置中设置proxyPort=“443”和scheme=“https”。非常感谢。