Websphere中IBMIHS中的HTTP到HTTPS

问题描述 投票:0回答:1

我有一个httpd.conf:

 .....
    Listen eagnmnmed338:9080
    Listen eagnmnmed338:9443
    .....
    LoadModule rewrite_module modules/mod_rewrite.so
    .....
    <VirtualHost eagnmnmed338:9080>
          RewriteEngine On
          # Disable Trace and Track
          RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
          RewriteRule .* - [F]

          # restrict to HTTP 1.1
          RewriteCond %{THE_REQUEST} !HTTP/1\.1$
          RewriteRule .* - [F]

    </VirtualHost>

    <VirtualHost eagnmnmed338:9443>
          .....
    </VirtualHost>

.....

它同时适用于http和https。

我需要将http请求重定向到https。

我添加:

RewriteEngine On
RewriteCond %{SERVER_PORT} =9080
RewriteRule ^http://%{SERVER_NAME}%{SERVER_PORT}%{REQUEST_URI} https://%{SERVER_NAME}:9443/%{REQUEST_URI} [R,L]

在全球范围内9080定义上的虚拟主机之前。

它不会重定向。

我也添加

RewriteRule ^http://%{SERVER_NAME}%{SERVER_PORT}%{REQUEST_URI} https://%{SERVER_NAME}:9443/%{REQUEST_URI} [R,L]

在9080 def的范围内,但不起作用。

任何建议都值得赞赏。

[[某些背景:http(端口80)请求将首先发送到netsscaler,netscaler会将请求作为9080上的负载平衡定向到主机。

感谢
websphere http-redirect
1个回答
0
投票
RewriteRule的第一个参数仅与请求URL的路径部分匹配,而不与整个URL匹配。

因为您已经有两个虚拟主机,所以无论如何都不需要检查端口或有关请求的其他任何内容。

© www.soinside.com 2019 - 2024. All rights reserved.