Configuración del proxy CRE

Para la comunicación, el proxy de Common Rendering Engine (CRE) aprovecha dos archivos de configuración de proxy: el archivo proxy-opensocial-config.pl de configuración de proxy externo y el archivo proxy-opensocial-internal-config.tpl de configuración de proxy interno.

Objetivo

  • La configuración de proxy externo, que se utiliza para la comunicación entre los gadgets y los servidores externos, es el archivo proxy-opensocial-config.tpl que se encuentra en el directorio LotusConnections-config. Está oculto de forma predeterminada y se puede alterar temporalmente creando un archivo proxy-opensocial-config.tpl. El archivo se puede personalizar para que se ajuste a sus necesidades. Además, de forma predeterminada, este proxy envía todas las cookies que le pasan a través del navegador, así que si desea limitarlo, deberá crear el archivo de configuración de proxy. Para obtener más información sobre el proxy externo, consulte Configuración del proxy AJAX.
  • La configuración del proxy interno se aprovecha para la comunicación entre servidores internos mediante Shindig/CRE. Este archivo está oculto de forma predeterminada, pero se puede alterar temporalmente colocando un archivo proxy-opensocial-internal-config.xml en el directorio LotusConnections-config. Raramente, si se lleva a cabo, podría modificar este archivo, pero si se encuentran cambios de valores necesarios durante la prueba de rendimiento, estos cambios se deberán incluir en el archivo predeterminado.

La configuración de proxy externo: proxy-opensocial-config.tpl

Para la configuración del proxy externo, CRE se ha ampliado para que lea el archivo proxy-opensocial-config.tpl. Este archivo funciona con la extensión de construcciones del proxy específicas del gadget. Estas construcciones específicas de los gadgets se omiten mediante el proxy de Connections estándar, pero las utiliza el proxy CRE. El archivo compañero proxy-config.dynamic controla cuál de estos puntos finales puede realizar el gadget solicitudes de salida, mientras el archivo proxy-opensocial-config.tpl controla las características (cabeceras/cookies/etc.) de la comunicación del gadget con dicho punto final.

Construcciones de proxy específicas del gadget

managed-headers
Finalidad: Proporciona un conjunto de cabeceras que se volverán a escribir y que se pasarán especialmente al gadget. El proxy ayuda a garantizar que estas cabeceras sean las siguientes:

La ubicación es como un igual de //policy/headers

El contenido tiene un elemento <managed-header>. Este elemento cuenta con un nodo de texto que especifica la 'header' que debe gestionarse.

Por ejemplo:
 <proxy:actions>
 ...
 </proxy:actions>
 <proxy:headers/>
 <proxy:managed-headers>
  <proxy:managed-header>X-LConn-Auth</proxy:managed-header>
 <proxy:managed-headers>
 ...
<proxy:policy>
managed-cookies
Finalidad: Proporciona un conjunto de cabeceras que se volverán a escribir y que se pasarán especialmente al gadget específico. La reescritura de la cookie garantiza que varios gadgets cargados en el mismo dominio no sobrescriban los valores de la cookie entre sí. A continuación, el proxy manejará la reescritura de la cookie de nuevo a su forma original.
La ubicación es como un igual de //policy/cookies
El contenido tiene un elemento <managed-cookie>. Este elemento cuenta con un nodo de texto que especifica la 'cookie' que debe gestionarse.
Por ejemplo:
<proxy:policy ..>
 <proxy:actions>
 ...
 </proxy:actions>
 <proxy:headers/>
 <proxy:managed-headers />
 <proxy:mime-types />
 <proxy:cookies/>
<proxy:managed-cookies>
  <proxy:managed-cookie>DomAuthSessId</proxy:managed-cookie>
 </proxy:managed-cookies>
 ...
<proxy:policy>

La configuración del proxy interno: archivo proxy-opensocial-internal-config.tpl

Normalmente no debería tener que modificar este archivo. Sin embargo, para obtener pruebas de rendimiento, la capacidad de modificar el archivo puede ser muy útil si se necesitan realizar modificaciones. Para alterar temporalmente la configuración predeterminada, pegue el siguiente ejemplo en un archivo denominado proxy-opensocial-internal-config.tpl en el directorio LotusConnections-config. A continuación se muestra un ejemplo del archivo proxy-opensocial-internal-config.tpl:
<?xml version="1.0" encoding="UTF-8"?>
<proxy:config id="proxy-opensocial-internal-config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:proxy="http://www.ibm.com/xmlns/prod/sw/ajax/proxy-config/1.0">
        <proxy:proxy-rules>
          <proxy:mapping contextpath="/*" />
        
          <proxy:policy url="*" acf="none" basic-auth-support="true" auth-support="true">
            <proxy:actions>
              <proxy:method>GET</proxy:method>
              <proxy:method>POST</proxy:method>
              <proxy:method>PUT</proxy:method>
              <proxy:method>DELETE</proxy:method>
            </proxy:actions>
            <proxy:headers>
              <proxy:header>*</proxy:header>
              <proxy:header>Authorization</proxy:header>      
            </proxy:headers>
            <proxy:cookies>
              <proxy:cookie>DomAuthSessId</proxy:cookie>
              <proxy:cookie>LtpaToken</proxy:cookie>
              <proxy:cookie>LtpaToken2</proxy:cookie>
              <proxy:cookie>Shimmer</proxy:cookie>
              <proxy:cookie>ShimmerS</proxy:cookie>
              <proxy:cookie>JSESSIONID</proxy:cookie>
            </proxy:cookies>
          </proxy:policy>
          <proxy:meta-data>
            <proxy:name>socket-timeout</proxy:name>
            <proxy:value>30000</proxy:value>
          </proxy:meta-data>
          <proxy:meta-data>
            <proxy:name>connection-timeout</proxy:name>
            <proxy:value>30000</proxy:value>
          </proxy:meta-data>
          <proxy:meta-data>
            <proxy:name>retries</proxy:name>
            <proxy:value>2</proxy:value>
          </proxy:meta-data>
          <proxy:meta-data>
            <proxy:name>max-connections-per-host</proxy:name>
            <proxy:value>100</proxy:value>
          </proxy:meta-data>
          <proxy:meta-data>
            <proxy:name>max-total-connections</proxy:name>
            <proxy:value>200</proxy:value>
          </proxy:meta-data>
          <proxy:meta-data>
            <proxy:name>unsigned_ssl_certificate_support</proxy:name>
            <proxy:value>true</proxy:value>
          </proxy:meta-data>
        </proxy:proxy-rules>
</proxy:config