Configuración de un plug-in de servidor web para el perfil Liberty

Puede configurar un plug-in de servidor web de modo que, cuando el servidor web recibe una solicitud HTTP de recursos dinámicos, la solicitud se reenvía al perfil Liberty.

Acerca de esta tarea

Los plug-ins de servidor web se utilizan para reenviar las solicitudes HTTP de un servidor web soportado a uno o varios servidores de aplicaciones. El plug-in toma una solicitud y la comprueba con los datos de configuración en el archivo plugin-cfg.xml. Los datos de configuración correlacionan el URI de la solicitud HTTP con el nombre de host de un servidor de aplicaciones. El plug-in de servidor web utiliza esta información para reenviar la solicitud al servidor de aplicaciones.

Procedimiento

  1. Instale un servidor web soportado, como por ejemplo IBM® HTTP Server que se entrega con IBM WebSphere Application Server. Consulte Instalación de IBM HTTP Server. Para plataformas i de IBMEl servidor web que se proporciona con IBM i ya está instalado con el producto 5761-DG1 para IBM i V6R1 o 5770-DG1 para IBM i V7R1. El servidor web IBM i se conoce como IBM HTTP Server for IBM i. IBM HTTP Server que se proporciona con WebSphere Application Server no se ejecuta en IBM i.
  2. Instale los plug-ins de servidor web y WebSphere Customization Toolbox (WCT).
  3. Para plataformas distribuidasConfigure el plug-in del servidor web para el servidor web que haya elegido utilizando WCT.
    • Cuando se le solicite en WCT, elija el caso de ejemplo "remoto" y especifique un nombre de host en el que esté accesible el perfil Liberty.
    • No copie ni ejecute el script configureWebserver generado porque este script no es necesario con el perfil Liberty.
  4. Inicie el servidor que aloja las aplicaciones y asegúrese de que la característica localConnector-1.0 o la característicaPara plataformas i de IBM o la característica restConnector-1.0 si configura un plug-in para IBM i y otras características necesarias se incluyen en la configuración del servidor.

    En el elemento pluginConfiguration del archivo de configuración del servidor, puede especificar los atributos webserverPort y webserverSecurePort para reenviar las solicitudes del servidor web. De forma predeterminada, el valor de webserverPort es 80 y el valor de webserverSecurePort es 443. Sin embargo, es posible que desee cambiar estos valores. Por ejemplo, en Linux y plataformas similares, si un usuario no es root, debe utilizar números de puerto superiores a 1024.

    Para todos los atributos configurables del elemento pluginConfiguration, consulte Elementos de configuración en el archivo server.xml.

    A continuación se muestra un ejemplo de un archivo de configuración del servidor server.xml:
    <server description="new server">
     <featureManager>
       <feature>localConnector-1.0</feature>
       		<feature>jsp-2.2</feature>
     </featureManager>
      
    <keyStore id="defaultKeyStore" password="{xor}PGY6bW4wOyw+" />
    
     <httpEndpoint id="defaultHttpEndpoint"
                     host="*"
                     httpPort="9080">
              <tcpOptions soReuseAddr="true" />
         </httpEndpoint>
    
     <pluginConfiguration webserverPort="80" 
                          webserverSecurePort="443" 
                          sslKeyringLocation="path/to/sslkeyring"
                          sslStashfileLocation="path/to/stashfile" 
                          sslCertlabel="definedbyuser"/>
    
     <application type="war" id="myapp" name="myapp" location="${server.config.dir}/apps/myapp.war" />
     <application type="war" id="snoop" name="snoop" location="${server.config.dir}/apps/snoop.war" />
    </server>

    Para plataformas i de IBMPara IBM i, incluya la característica restConnector-1.0 en lugar de la característica localConnector-1.0. Para obtener información detallada, consulte Configuración de una conexión JMX segura con el perfil Liberty.

    Para plataformas i de IBMA continuación se muestra un ejemplo de un archivo de configuración del servidor server.xml para IBM i:
    <server description="new server">
    
    <!-- Habilitar las características -->
      <featureManager>
         		<feature>jsp-2.2</feature>
         <feature>restConnector-1.0</feature>
      </featureManager>
    
    <keyStore id="defaultKeyStore" password="{xor}PGY6bW4wOyw+" />
    
     <httpEndpoint id="defaultHttpEndpoint"
                     host="*"
                     httpPort="9080"
                     httpsPort="9443">
              <tcpOptions soReuseAddr="true" />
         </httpEndpoint>
    
    <quickStartSecurity userName="testuser"
     						userPassword="security" /> 
    
     <pluginConfiguration webserverPort="80" 
                          webserverSecurePort="443" 
                          sslKeyringLocation="path/to/sslkeyring"
                          sslStashfileLocation="path/to/stashfile" 
                          sslCertlabel="definedbyuser"/>
    
     <application type="war" id="myapp" name="myapp" location="${server.config.dir}/apps/myapp.war" />
     <application type="war" id="snoop" name="snoop" location="${server.config.dir}/apps/snoop.war" />
    </server>
    Nota:
    • Si configura el plug-in de servidor web para utilizar SSL, debe habilitar la característica de Liberty ssl-1.0 del perfil Liberty.
    • Si el servidor web utiliza los puertos predeterminados, no tendrá que incluir el elemento pluginConfiguration en el archivo server.xml.
    • El almacén de claves que utiliza el plug-in de servidor web debe ser un almacén de claves CMS, que puede crearse utilizando el programa de utilidad de gestión de claves (iKeyman). No puede utilizar el almacén de claves JKS que se crea mediante el perfil Liberty o el perfil completo para el plug-in de servidor web, aunque debe intercambiar certificados de firmante entre el almacén de claves del plug-in de servidor web y el almacén de claves del perfil Liberty.
    • Para configurar la ubicación del archivo de registro del plug-in, añada el fragmento de código siguiente al archivo server.xml:
      <Log LogLevel="Error" Name="String\logs\String\http_plugin.log"/>
      o [8.5.5.6 o posterior]
      <Log LogLevel="Error" Name="/vía de acceso al archivo de registro/http_plugin.log"/>
  5. Genere el archivo plugin-cfg.xml para el servidor de perfiles Liberty y las aplicaciones invocando el MBean WebSphere:name=com.ibm.ws.jmx.mbeans.generatePluginConfig.
    1. Utilizando el mismo JDK Java que el servidor, ejecute el programa de utilidad Java jconsole en una ventana de mandatos.
      Por ejemplo, ejecute el mandato siguiente:
      c:\java\bin\jconsole
      El proceso de servidor se lista en las opciones que están a la espera de la conexión.
      En IBM i, ejecute el programa de utilidad jconsole de Java desde una ventana de mandatos mediante el Java SDK instalado con WCT en su estación de trabajo. Por ejemplo, lleve a cabo los pasos siguientes:
      1. Cree el directorio C:\restClient en su estación de trabajo.
      2. Copie ${wlp.install.dir}/clients/restConnector.jar en el directorio C:\restClient de la estación de trabajo.
      3. Copie ${server.output.dir}/resources/security/key.jks en el directorio C:\restClient de la estación de trabajo.
      4. En una ventana de mandatos, escriba SET JAVA_HOME=wct_root\java.
        Nota: Temporalmente, modifique wct_root\java\jre\lib\security\java.security comentando las dos líneas que establecen las fábricas de sockets SSL de WebSphere Application Server. Esta modificación se documenta en la sección Resolución de problemas de SSL del tema Sugerencias para la resolución de problemas.
      5. Desde la misma ventana de mandatos, ejecute el programa de utilidad jconsole de Java.
        Por ejemplo, ejecute el mandato siguiente:
        "%JAVA_HOME%"\bin\jconsole -J-Djava.class.path="%JAVA_HOME%"\lib\jconsole.jar;"%JAVA_HOME%"\lib\tools.jar;
        C:\restClient\restConnector.jar -J-Djavax.net.ssl.trustStore=C:\restClient\key.jks
         -J-Djavax.net.ssl.trustStorePassword=Liberty -J-Djavax.net.ssl.trustStoreType=jks
        Puede que necesite el parámetro siguiente:
        -J-Dcom.ibm.ws.jmx.connector.client.disableURLHostnameVerification=true
    2. Conéctese al servidor y, a continuación, pulse la pestaña MBeans. Para plataformas i de IBMDespués de que jConsole se inicie, seleccione Proceso remoto, y especifique el URL del servicio JMX: service:jmx:rest://<host>:<port>/IBMJMXConnectorREST. El número de puerto es el puerto HTTPS. Debe proporcionar también el nombre de usuario y la contraseña.
    3. Localice el MBean com.ibm.ws.jmx.mbeans.generatePluginConfig en el dominio de WebSphere.
    4. Invoque la operación generateDefaultPluginConfig para generar el archivo plugin-cfg.xml, o invoque la operación generatePluginConfig para personalizar el directorio raíz de instalación y el nombre de servidor antes de generar el archivo plugin-cfg.xml.
    A continuación se muestra un ejemplo de un archivo plugin-cfg.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <Config ASDisableNagle="false" AcceptAllContent="false" AppServerPortPreference="HostHeader" 
            ChunkedResponse="false" FIPSEnable="false" IISDisableNagle="false" 
            IISPluginPriority="High" IgnoreDNSFailures="false" RefreshInterval="60" 
            ResponseChunkSize="64" SSLConsolidate="false" SSLPKCSDriver="REPLACE" 
            SSLPKCSPassword="REPLACE" TrustedProxyEnable="false" VHostMatchingCompat="false">
       <Log LogLevel="Error" Name=".\logs\defaultServer\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="."/>
       <VirtualHostGroup Name="default_host">
             <VirtualHost Name="*:80"/>
             <VirtualHost Name="*:443"/>
             <VirtualHost Name="*:9080"/>
         </VirtualHostGroup>
     <ServerCluster CloneSeparatorChange="false" GetDWLMTable="false" IgnoreAffinityRequests="true" 
                    LoadBalance="Round Robin" Name="defaultServer_default_node_Cluster" 
                    PostBufferSize="64" PostSizeLimit="-1" RemoveSpecialHeaders="true" 
                    RetryInterval="60">
          <Server CloneID="b564bdc7-2c27-4a4b-ad37-9213c66e60d1" ConnectTimeout="0"
                  ExtendedHandshake="false" MaxConnections="-1" Name="default_node_defaultServer0"
                  ServerIOTimeout="900" WaitForContinue="false">
              <Transport Hostname="somehost.example.com" Port="9080" Protocol="http"/>
             </Server>
          <PrimaryServers>
              <Server Name="default_node_defaultServer0"/>
             </PrimaryServers>
        </ServerCluster>
     <UriGroup Name="default_host_defaultServer_default_node_Cluster_URIs">
          <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/myapp/*"/>
          <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/snoop/*"/>
        </UriGroup>
     <Route ServerCluster="defaultServer_default_node_Cluster" UriGroup="default_host_defaultServer_default_node_Cluster_URIs" VirtualHostGroup="default_host"/>
    </Config>
    El archivo plugin-cfg.xml se genera en el directorio ${server.output.dir}.
    Nota:
    • Puede utilizar el programa de utilidad jConsole con el perfil Liberty. No obstante, los problemas con el programa de utilidad deben notificarse al proveedor de SDK Java.
    • La interfaz de gestión para el MBean WebSphere:name=com.ibm.ws.jmx.mbeans.generatePluginConfig es com.ibm.websphere.webcontainer.GeneratePluginConfigMBean. Puede utilizar la interfaz de gestión para obtener un objeto de proxy. Consulte Ejemplos de acceso a atributos y operaciones de MBean. Para obtener más información sobre la interfaz de gestión, consulte el documento de la API Java para el perfil Liberty. La documentación de la API Java para cada API de perfil Liberty se detalla en la sección Interfaces de programación (API) del Information Center, y también está disponible como un archivo .zip aparte en uno de los subdirectorios javadoc del directorio ${wlp.install.dir}/dev.
  6. Copie el archivo plugin-cfg.xml en la máquina que aloja el servidor web. Para plataformas i de IBMPara IBM i, lleve a cabo los pasos siguientes:
    1. Ejecute el mandato manageprofiles Qshell para crear un perfil http. Por ejemplo, raíz_plugins/bin/manageprofiles -create -profileName http -templatePath http.
    2. Copie el archivo plugin-cfg.xml en el directorio config del perfil http que se ha creado en un paso a, por ejemplo, raíz_perfil_plugin/config/plugin-cfg.xml, y establezca los permisos del archivo.
    3. Ejecute el mandato siguiente desde una línea de mandatos del sistema para cambiar los permisos de archivo a los valores necesarios:
      CHGAUT USER(QEJBSVR QTMHHTTP QNOTES) OBJ('raíz_perfil_plugin/config/plugin-cfg.xml') DTAAUT(*RWX)
  7. Para plataformas i de IBMConfigure el servidor HTTP para que use el archivo plugin-cfg.xml.

    Busque la ubicación del archivo plugin-cfg.xml actual buscando el valor especificado para la directiva WebSpherePluginConfig al final del archivo de configuración del servidor HTTP. Por ejemplo, <IHS_ROOT>/conf/httpd.conf.

    Habilite el plug-in en el archivo httpd.conf del servidor web utilizando la frase LoadModule y especifique la ubicación del archivo plugin-cfg.xml utilizando la frase WebSpherePluginConfig. Por ejemplo:
    • En sistemas Windows:Para plataformas Windows
      LoadModule was_ap22_module "path/to/mod_was_ap22_http.dll"
      WebSpherePluginConfig "C:\Program Files\IBM\HTTPServer\conf\plugin-cfg.xml"
    • En otros sistemas distribuidos: Para plataformas AIXPara plataformas LINUXPara plataformas UNIXPara plataformas HP-UXPara plataformas SolarisPara plataformas i de IBM
      LoadModule was_ap22_module "path/to/mod_was_ap22_http.so"
      WebSpherePluginConfig "/opt/IBM/HTTPServer/conf/plugin-cfg.xml"

    Para plataformas i de IBMPara IBM i, consulte Configuración de IBM HTTP Server basado en Apache 2.x para obtener instrucciones sobre cómo habilitar el plug-in dentro del archivo httpd.conf.

  8. Opcional: Si desea que el plug-in de servidor web reenvíe solicitudes HTTP a más de un servidor de perfiles Liberty, repita los pasos anteriores para cada servidor adicional. Asegúrese de consolidar todas las configuraciones de plug-in en un archivo plugin-cfg.xml.
    Nota:

Icono que indica el tipo de tema Tema de tarea

Términos y condiciones para centros de información | Comentarios


Icono de indicación de fecha y hora Última actualización: 15 de junio de 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_admin_webserver_plugin
Nombre de archivo:twlp_admin_webserver_plugin.html