IHS インスタンスを設定しました。インスタンスはリモート マシンで 2 つの Websphere JVM を提供しています (これらの WAS jvm は両方とも同じリモート マシンにあります)。クラスターは作成していません。
両方の JVM がロードバランス モード、つまり LoadBalanceWeight != 0 の場合、ポート 80 経由で Web URL を使用してアプリケーションの静的ファイル (Web ページに埋め込まれた画像) にアクセスできません。HTML ページを検査すると、「リソースのロードに失敗しました: サーバーは 404 (Not Found) のステータスで応答しました".
ただし、JVM のいずれかの IHS プラグイン ファイルで LoadBalanceWeight=0 にすると、Web URL を使用してアプリケーションの静的ファイルに正常にアクセスできます。まったく問題ありません。
作業用 plugin-cfg.xml の内容 ->
<?xml version="1.0" encoding="ISO-8859-1"?>
<Config ASDisableNagle="false" AcceptAllContent="false" AppServerPortPreference="HostHeader" ChunkedResponse="false" FIPSEnable="false" FailoverToNext="false" HTTPMaxHeaders="300" IISDisableNagle="false" IISPluginPriority="High" IgnoreDNSFailures="false" KillWebServerStartUpOnParseErr="false" MarkBusyDown="false" OS400ConvertQueryStringToJobCCSID="false" RefreshInterval="10" ResponseChunkSize="64" SSLConsolidate="true" TrustedProxyEnable="false" VHostMatchingCompat="false">
<Log LogLevel="Error" Name="c:\IBM\HTTPServer\Plugins\logs\webserver1\http_plugin.log"/>
<Property Name="ESIEnable" Value="true"/>
<Property Name="ESIMaxCacheSize" Value="1024"/>
<Property Name="ESIInvalidationMonitor" Value="false"/>
<Property Name="ESIEnableToPassCookies" Value="false"/>
<Property Name="ESICacheidFull" Value="false"/>
<VirtualHostGroup Name="default_host">
<VirtualHost Name="*:80"/>
<VirtualHost Name="*:443"/>
</VirtualHostGroup>
<ServerCluster CloneSeparatorChange="false" GetDWLMTable="false" IgnoreAffinityRequests="true" LoadBalance="Round Robin" Name="sserver1_ASAPD01Node01_Cluster" PostBufferSize="64" PostSizeLimit="-1" RemoveSpecialHeaders="true" RetryInterval="60">
<Server CloneID=eappsrv3 LoadBalanceWeight=100 ConnectTimeout="0" ExtendedHandshake="false" MaxConnections="-1" Name="ASAPD01Node01_server1" ServerIOTimeout="0" WaitForContinue="false">
<Transport Hostname=x.x.x.x Port="9082" Protocol="http"/>
<Transport Hostname=x.x.x.x Port="9445" Protocol="https">
<Property Name="keyring" Value="c:\IBM\HTTPServer\Plugins\config\webserver1\plugin-key.kdb"/>
<Property Name="stashfile" Value="c:\IBM\HTTPServer\Plugins\config\webserver1\plugin-key.sth"/>
</Transport>
</Server>
<Server CloneID=eappsrv4 LoadBalanceWeight=0 Name="ASAPD01Node02_server1" WaitForContinue="false" ServerIOTimeout="0" MaxConnections="-1" ExtendedHandshake="false" ConnectTimeout="0">
<Transport Protocol="http" Port="9084" Hostname=x.x.x.x/>
<Transport Protocol="https" Port="9447" Hostname=x.x.x.x>
<Property Name="keyring" Value="c:\IBM\HTTPServer\Plugins\config\webserver1\plugin-key.kdb"/>
<Property Name="stashfile" Value="c:\IBM\HTTPServer\Plugins\config\webserver1\plugin-key.sth"/>
</Transport>
</Server>
</ServerCluster>
<UriGroup Name="default_host_server1_ASAPD01Node01_Cluster_URIs">
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/snoop/*"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/hello"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/hitcount"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="*.jsp"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="*.jsv"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="*.jsw"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/j_security_check"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ibm_security_logout"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/servlet/*"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/mno/*"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ivt/*"/>
</UriGroup>
<Route ServerCluster="server1_ASAPD01Node01_Cluster" UriGroup="default_host_server1_ASAPD01Node01_Cluster_URIs" VirtualHostGroup="default_host"/>
<RequestMetrics armEnabled="false" loggingEnabled="false" rmEnabled="false" traceLevel="HOPS">
<filters enable="false" type="URI">
<filterValues enable="false" value="/snoop"/>
<filterValues enable="false" value="/hitcount"/>
</filters>
<filters enable="false" type="SOURCE_IP">
<filterValues enable="false" value="255.255.255.255"/>
<filterValues enable="false" value="254.254.254.254"/>
</filters>
<filters enable="false" type="JMS">
<filterValues enable="false" value="destination=aaa"/>
</filters>
<filters enable="false" type="WEB_SERVICES">
<filterValues enable="false" value="wsdlPort=aaa:op=bbb:nameSpace=ccc"/>
</filters>
</RequestMetrics>
</Config>
両方のノードが稼働している場合のプラグイン ログの例外は次のとおりです ->
プラグインログ取得中 ->
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DEBUG: lib_util: parseHostHeader: Defaulting port for scheme 'http'
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DEBUG: lib_util: parseHostHeader: Host: 'www.abc.com', port 80
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DEBUG: ws_common: websphereCheckConfig: Current time is 1463106253, next stat time is 1463106260
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DETAIL: ws_common: websphereShouldHandleRequest: trying to match a route for: vhost='www.abc.com'; uri='/css/bootstrap.css'
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DEBUG: ws_common: webspherePortNumberForMatching: Using logical.
[Fri May 13 02:24:13 2016] 00001828 000017c0 - TRACE: ws_common: websphereVhostMatch: Comparing '*:443' to 'www.abc.com:80' in VhostGroup: default_host
[Fri May 13 02:24:13 2016] 00001828 000017c0 - TRACE: ws_common: websphereVhostMatch: Comparing '*:80' to 'www.abc.com:80' in VhostGroup: default_host
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DEBUG: ws_common: websphereVhostMatch: Found a match '*:80' to 'www.abc.com:80' in VhostGroup: default_host with score 1, exact match 0
[Fri May 13 02:24:13 2016] 00001828 000017c0 - TRACE: ws_common: websphereUriMatch: uri length smaller than uri defs so skipping the rest
[Fri May 13 02:24:13 2016] 00001828 000017c0 - TRACE: ws_common: websphereUriMatch: Failed to match: /css/bootstrap.css
[Fri May 13 02:24:13 2016] 00001828 000017c0 - DETAIL: ws_common: websphereShouldHandleRequest: No route found
[Fri May 13 02:24:13 2016] 00001828 000017c0 - TRACE: mod_was_ap20_http: as_handler: In the app server handler
[Fri May 13 02:24:13 2016] 00001828 0000173c - DEBUG: lib_util: parseHostHeader: Defaulting port for scheme 'http'
[Fri May 13 02:24:13 2016] 00001828 0000173c - DEBUG: lib_util: parseHostHeader: Host: 'www.abc.com', port 80
[Fri May 13 02:24:13 2016] 00001828 0000173c - DEBUG: ws_common: websphereCheckConfig: Current time is 1463106253, next stat time is 1463106260
[Fri May 13 02:24:13 2016] 00001828 0000173c - DETAIL: ws_common: websphereShouldHandleRequest: trying to match a route for: vhost='www.abc.com'; uri='/css/docs.min.css'
[Fri May 13 02:24:13 2016] 00001828 0000173c - DEBUG: ws_common: webspherePortNumberForMatching: Using logical.
[Fri May 13 02:24:13 2016] 00001828 0000173c - TRACE: ws_common: websphereVhostMatch: Comparing '*:443' to 'www.abc.com:80' in VhostGroup: default_host
[Fri May 13 02:24:13 2016] 00001828 0000173c - TRACE: ws_common: websphereVhostMatch: Comparing '*:80' to 'www.abc.com:80' in VhostGroup: default_host
[Fri May 13 02:24:13 2016] 00001828 0000173c - DEBUG: ws_common: websphereVhostMatch: Found a match '*:80' to 'www.abc.com:80' in VhostGroup: default_host with score 1, exact match 0
[Fri May 13 02:24:13 2016] 00001828 0000173c - TRACE: ws_common: websphereUriMatch: uri length smaller than uri defs so skipping the rest
[Fri May 13 02:24:13 2016] 00001828 0000173c - TRACE: ws_common: websphereUriMatch: Failed to match: /css/docs.min.css
[Fri May 13 02:24:13 2016] 00001828 0000173c - DETAIL: ws_common: websphereShouldHandleRequest: No route found
[Fri May 13 02:24:13 2016] 00001828 0000173c - TRACE: mod_was_ap20_http: as_handler: In the app server handler
ibm-web-ext.xmi ファイルの「fileServingEnabled」プロパティーは、両方の WAS JVM で true に設定されていることに注意してください。
両方のノードが稼働しているときに問題を引き起こすロードバランシング構成について、ここで欠けているものは何ですか?