0
votes

I have a WebSphere Application Server 7 and a IHS 7 configured in my machine. When I installed an application, I can access it from the JVM port (eg: 9080) but I can't access through port 80, I have configured the plugin in the WAS admin console, but it's not working. This is the plugin-cfg.xml file content

<?xml version="1.0" encoding="ISO-8859-1"?><!--HTTP server plugin config file for the webserver 01-14305N605062Node02Cell.01-14305N605062Node02.webserver1 generated on 2014.01.21 at 09:49:06 AM BRST-->
<Config ASDisableNagle="false" AcceptAllContent="false" AppServerPortPreference="WebserverPort" ChunkedResponse="false" FIPSEnable="false" IISDisableNagle="false" IISPluginPriority="High" IgnoreDNSFailures="false" RefreshInterval="60" ResponseChunkSize="64" 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="PluginInstallRoot" Value="C:\IBM\HTTPServer\Plugins\"/>
   <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>

Can anyone help me with this?

Thanks.

3

3 Answers

1
votes

Do you have a Web Server defined in the WebSphere console? It'll be under something like Servers > Web Servers. (I'm looking at a different version of WAS right now.) If not, you need to create one.

If you do, you may be looking at a different location for the plugin configuration than the one WebSphere is writing to. httpd.conf contains the location IHS is using, and the WebSphere console will show you its location if you select the defined Web Server and look at the Configuration file name input field.

I think one of those two is likely since you don't even have a default_host defined in your file. Something like:

   <VirtualHostGroup Name="default_host">
      <VirtualHost Name="*:9080"/>
      <VirtualHost Name="*:80"/>
      <VirtualHost Name="*:9443"/>
      <VirtualHost Name="*:5060"/>
      <VirtualHost Name="*:5061"/>
      <VirtualHost Name="*:443"/>
   </VirtualHostGroup>

Finally, you'll want to select both the Application Server(s) and the Web Server(s) when you map your web modules to servers.

There are console options to force re-generating the plugin, either Globally under the Environment menu, or for individual Web Servers under each server. You can do this and see if the filesystem timestamp and the file content change in the location you expect.

0
votes

Your Plugin configuration file is essentially empty. It should be somewhat like the following:

<?xml version="1.0" encoding="ISO-8859-1"?><!--HTTP server plugin config file for the webserver 01-14305N605062Node02Cell.01-14305N605062Node02.webserver1 generated on 2014.01.21 at 09:49:06 AM BRST-->
<Config ASDisableNagle="false" AcceptAllContent="false" AppServerPortPreference="WebserverPort" ChunkedResponse="false" FIPSEnable="false" IISDisableNagle="false" IISPluginPriority="High" IgnoreDNSFailures="false" RefreshInterval="60" ResponseChunkSize="64" 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="PluginInstallRoot" Value="C:\IBM\HTTPServer\Plugins\"/>
   <VirtualHostGroup Name="default_host">
      <VirtualHost Name="*:80"/>
      <VirtualHost Name="*:443"/>
   </VirtualHostGroup>
    <ServerCluster CloneSeparatorChange="false" GetDWLMTable="false" IgnoreAffinityRequests="true" LoadBalance="Round Robin" Name="server1_myserverNode01_Cluster" PostBufferSize="64" PostSizeLimit="-1" RemoveSpecialHeaders="true" RetryInterval="60">
      <Server ConnectTimeout="0" ExtendedHandshake="false" MaxConnections="-1" Name="myserverNode01_server1" ServerIOTimeout="0" WaitForContinue="false">
         <Transport Hostname="myserver.domain.com" Port="9080" Protocol="http"/>
         <Transport Hostname="myserver.domain.com" Port="9443" 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>
   </ServerCluster>
   <UriGroup Name="default_host_server1_myserverNode01_Cluster_URIs">
      <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/myapp-context-root/*"/>
   </UriGroup>
   <Route ServerCluster="server1_myserverNode01_Cluster" UriGroup="default_host_server1_myserverNode01_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>

To achieve this if your Websphere server is in a remote host:

  • Copy the configurewebserver1.bat from your plugins bin folder to your dmgr bin folder or standalone profile bin folder and run it
  • Copy the files plugin-cfg.xml, plugin-key.kdb, plugin-key.sth that have been created inside Was_profile_home/config/cells/mycell/nodes/webserver1.mydomain.com/servers/webserver1 into your plugin_home/config/webserver1 folder

I may not be so accurate about the process above so you may need to check the documentation.

-1
votes

Also make sure your httpd.conf has

LoadModule was_ap22_module /opt/WebSphere70/Plugin/bin/32bits/mod_was_ap22_http.so 

WebSpherePluginConfig /opt/WebSphere70/Plugin/config/hkgv2ls0130/plugin-cfg.xml