Español

Cómo: Configurar un proxy inverso para un sitio web instalado de ArcGIS Survey123

Resumen

Este artículo está destinado a los usuarios que ya han instalado y configurado el sitio web de Survey123 en su propio entorno. El instalador del sitio web de Survey123 se puede descargar desde el sitio web de My Esri para los sistemas operativos Windows y Linux. Encontrará detalles para ejecutar y configurar la instalación en el siguiente artículo: Cómo: Instalar y configurar el sitio web de ArcGIS Survey123.

El instalador del sitio web de Survey123 requiere que los administradores especifiquen puertos HTTP o HTTPS al configurar el paquete en la infraestructura local. De forma predeterminada, el sitio web de Survey123 es accesible en un puerto HTTP (5080) o HTTPS (5443). Sin embargo, algunos usuarios requieren una forma de acceder al sitio web utilizando un puerto HTTP (80) o HTTPS (443) normal. Aunque se puede hacer utilizando ArcGIS Web Adaptor para el portal o el servidor de ArcGIS Enterprise, el instalador del sitio web de Survey123 se basa en un proxy inverso para ello. Un proxy inverso es el procedimiento genérico que permite acceder a un sitio web a través de un puerto o servidor diferente.

Este artículo describe los pasos para configurar un proxy inverso para un sitio web de ArcGIS Survey123 instalado. Consulte la información sobre su sistema operativo en la sección siguiente.

Procedimiento

Advertencia: Consulte al administrador del sistema para ver si este enfoque es adecuado para su entorno.

Windows:
Requisitos

  • Un servidor web que ejecuta IIS. Idealmente, este es el mismo servidor web en el que se han instalado los ArcGIS Web Adaptor; proporciona la ventaja de no tener que preocuparse por el uso compartido de recursos de distinto origen con la instalación de Enterprise. Nota: Debe tener acceso administrativo en este servidor web.
  • Instale el módulo Reescribir la URL de IIS. Asegúrese de que el módulo Reescribir la URL de IIS esté instalado en su servidor web.
  • Instale el módulo Generación de rutas de solicitud de aplicación de IIS. Asegúrese también de que el módulo Generación de rutas de solicitud de aplicación de IIS esté instalado en el servidor web. Una vez instalada, habilite la funcionalidad proxy, ya que está deshabilitada de forma predeterminada:
  1. Abra el Administrador de IIS en el servidor web.
  2. Seleccione el servidor de la vista de árbol de la izquierda.
  3. Haga doble clic en Generación de rutas de solicitud de aplicación.
  4. Seleccione Configuración del proxy del servidor en la ventana Acciones de la derecha.
  5. Active la casilla de verificación Habilitar proxy y haga clic en Aplicar.

Procedimiento

  1. Abra el Administrador de IIS en el servidor web.
  2. Expanda la entrada Sitios en la barra lateral izquierda y seleccione el sitio desde el que acceder a Survey123; en muchos casos, se trata del sitio web predeterminado. Haga clic con el botón derecho en el sitio y seleccione Explorar para abrir una ventana Opciones de Internet.
  3. Cree una nueva carpeta y cambie el nombre a survey123. Esta carpeta es el punto de acceso de Survey123.
  4. Descargue web.config.zip, extraiga el archivo web.config y cópielo en esta nueva carpeta. Puede elegir un nombre alternativo para esta carpeta, pero recuerde actualizar el valor en el archivo web.config editándolo en un editor de texto, como se muestra en el ejemplo siguiente:
<outboundRules>   <rule name="update base tag" preCondition="isHTML">     <match filterByTags="Base" pattern="^/(.*)" />     <action type="Rewrite" value="/survey123/" />     <conditions trackAllCaptures="false">       <add input="{URL}" pattern="/" />     </conditions>   </rule>   <preConditions>     <preCondition name="isHTML">       <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />     </preCondition>   </preConditions> </outboundRules>
  1. Si el sitio web de Survey123 no está instalado en el equipo en el que se configura el proxy inverso (o se cambia el puerto HTTP para el sitio web de Survey123), actualice el nombre del servidor en la sección de reglas entrantes del archivo web.config. De lo contrario, deje la URL como http://localhost:5080/, como en el ejemplo siguiente.
<rules>   <clear />     <rule name="ReverseProxyHTML" stopProcessing="false">       <match url="(^$|.*\.html$)" />       <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />       <action type="Rewrite" url="http://localhost:5080/{R:1}" />       <serverVariables>         <set name="HTTP_X_ORIGINAL_ACCEPT_ENCODING" value="{HTTP_ACCEPT_ENCODING}" />         <set name="HTTP_ACCEPT_ENCODING" value="" />       </serverVariables>     </rule>     <rule name="ReverseProxyInboundRule1" stopProcessing="true">       <match url="(.*)" />         <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />         <action type="Rewrite" url="http://localhost:5080/{R:1}" />     </rule> </rules>
  1. Cierre la ventana Opciones de Internet. En el Administrador de IIS, haga clic con el botón derecho en el sitio y haga clic en Refrescar para mostrar la nueva carpeta.
  2. Seleccione la carpeta.
  3. En la sección de IIS de las propiedades de configuración, haga doble clic en Reescribir la URL.
  4. En el panel Acciones de Reescribir la URL, haga clic en Ver variables del servidor.
  5. Haga clic en Agregar en el panel Acciones de la derecha y agregue dos variables.
    • HTTP_ACCEPT_ENCODING (aparece en la lista desplegable)
    • HTTP_X_ORIGINAL_ACCEPT_ENCODING
  6. Haga clic en Volver a Reglas.
  7. Acceda al sitio web de Survey123 instalado utilizando la URL base y el punto de proxy inverso.

Linux
Requisitos:
Dado que existen numerosas distribuciones de Linux, el proceso para configurar un proxy inverso difiere levemente de uno a otro. Estas instrucciones son un 'mínimo' básico para acceder al sitio web de Survey123 instalado a través del proxy inverso y cubren las tres distribuciones de Linux admitidas por ArcGIS Enterprise 10.8.x: Red Hat Enterprise Linux (RHEL) Server, SUSE Linux Enterprise Server (SLES) y Ubuntu Server.

  • Servidor web que ejecuta Apache. Idealmente, este es el mismo servidor web en el que se han instalado los ArcGIS Web Adaptor; proporciona la ventaja de no tener que preocuparse por el uso compartido de recursos de distinto origen con la instalación de Enterprise. Nota: Debe tener acceso administrativo en este servidor web.
  • Tenga Apache configurado con SSL. Esto es opcional pero muy recomendable.

Procedimiento

  1. *Solo RHEL: Compruebe si el servicio httpd puede crear conexiones de red:
sudo getsebool httpd_can_network_connect
  • Si está desactivado, ejecute:
sudo /usr/sbin/setsebool -P httpd_can_network_connect 1
  1. Cargue los módulos necesarios.

RHEL: cree un archivo de configuración para cargar módulos:

sudo vim /etc/httpd/conf.modules.d/00-survey123.conf
  • Copie/pegue lo siguiente en el archivo:
# This file configures all the modules needed for the Survey123 website: LoadModule proxy_module modules/mod_proxy.so LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule filter_module modules/mod_filter.so LoadModule substitute_module modules/mod_substitute.so

SLES/Ubuntu: Habilite los módulos individualmente mediante:

sudo a2enmod proxy sudo a2enmod proxy_http sudo a2enmod filter sudo a2enmod substitute
  1. Cree/edite los archivos de configuración del sitio de Survey123 para que contengan las directivas de proxy inverso.
RHEL: Ejemplo:
sudo vim /etc/httpd/conf.d/survey123.conf

SLES: Ejemplo:

sudo vim /etc/apache2/vhosts.d/survey123.conf sudo vim /etc/apache2/vhosts.d/survey123-ssl.conf
Ubuntu: Ejemplo utilizando los archivos de configuración del sitio predeterminados:
sudo vim /etc/apache2/sites-available/000-default.conf sudo vim /etc/apache2/sites-available/default-ssl.conf
  1. Copie/pegue las siguientes directivas de proxy inverso en el archivo (recuerde comentar la sección A o B dependiendo de si utiliza HTTP o SSL):
# ------------------------------------ # Survey123 reverse proxy configuration # Enable ProxyPreserveHost - useful for application logging ProxyPreserveHost On # ------------------------------------ # Configure the reverse proxy.  Use either A. or B. # ------------------------------------ # A. Reverse proxy over HTTP ProxyPass /survey123 http://localhost:5080 ProxyPassReverse /survey123 http://localhost:5080 # B. Reverse proxy over SSL:  # SSLProxyEngine on # These SSLProxy statements may be needed if Survey123 is using an untrusted certificate # SSLProxyVerify none # SSLProxyCheckPeerName off # SSLProxyCheckPeerCN off # SSLProxyCheckPeerExpire off # ProxyPass /survey123 https://localhost:5443 # ProxyPassReverse /survey123 https://localhost:5443 # ------------------------------------ # Filter & update the <base> tag in HTML <Location "/survey123">               AddOutputFilterByType SUBSTITUTE text/html                Substitute 's#"/"#"/survey123/"#ni' </Location> # End Survey123 reverse proxy configuration # ------------------------------------
  1. Reinicie Apache.

RHEL

sudo systemctl restart httpd

SLES / Ubuntu

sudo systemctl restart apache2
  1. Acceda al sitio web de Survey123 instalado utilizando la URL base y el punto de proxy inverso; por ejemplo:
https://some-machine.domain/survey123

Información relacionada

Última modificación: 4/27/2022

Id. de artículo: 000023967

Software: Portal for ArcGIS 10.9.1, 10.9