Configuración del encabezado de Apache con condiciones de exclusión de rutas/directorios/ips del servidor

Configuración del encabezado de Apache con condiciones de exclusión de rutas/directorios/ips del servidor

Utilizo un complemento de WordPress llamado Duplicator Pro y la mejor manera de instalar con sus instaladores es usar la IP del servidor en lugar del dominio porque de esa manera se completa automáticamente y se conecta al servidor más fácilmente, sin activar múltiples reglas de ModSecurity.

La mejor URL de instalación es:

http://111.222.333.444/~customcpanelaccount/customfolder/installer.php

En lugar de:

https://website.com/customfolder/installer.php

Si carga cualquiera de esos archivos, lo redireccionará automáticamente a:

/customfolder/dup-installer/main.installer.php

Sin embargo, debido a que el servidor tiene la siguiente regla Apache/LiteSpeed, redirige automáticamente http:// a https://, lo que provoca que muestre el siguiente mensaje:

Conectarse a la red

<IfModule mod_headers.c>
    Header always set Content-Security-Policy "upgrade-insecure-requests;"
</IfModule>

Estoy tratando de encontrar una manera de hacer que la regla Apache/LiteSpeed ​​anterior solo se aplique a dominios, no a direcciones IP directas O hacer que no se active cuando se usa el archivo de installer.phpy main.installer.phpel directorio de/dup-installer/

Es una pena que no haya declaraciones if de tipo FilesNotMatch / DirectoryNotMatch / LocationNotMatch.

Alguien tiene alguna idea, ¡agradecería mucho la ayuda/consejo!

Respuesta1

Puede establecer una variable de entorno (p. ej. DOMAIN_REQUESTED) si se solicita un dominio (a diferencia de la dirección IP) y establecerla Headercondicionalmente en función de si esta var de entorno se establece mediante el env=argumento.

Por ejemplo:

SetEnvIf Host "[a-z]" DOMAIN_REQUESTED
Header always set Content-Security-Policy "upgrade-insecure-requests;" env=DOMAIN_REQUESTED

Si el Hostencabezado contiene un carácter az, entonces debe solicitar un nombre de dominio, no la dirección IP. En cuyo caso la DOMAIN_REQUESTEDvar env se establece en 1.

Sin embargo...

  • ¿Parece extraño que sea preferible instalar esto a través de HTTP inseguro usando la dirección IP del servidor y un directorio web por usuario? Generalmente es mejor evitar los directorios web por usuario (mod_userdir), ya que realmente interfieren con las rutas URL relativas a la raíz.

  • Si esto es sólo para el proceso de instalación, ¿no puede simplemente comentar esa Headerdirectiva temporalmente?

Es una pena que no haya declaraciones if de tipo FilesNotMatch / DirectoryNotMatch / LocationNotMatch.

Bueno, en cierto modo lo hay, ya que puedes usar unanticipación negativa(oMira atrás) en la expresión regular para determinar cuándo ocurre una coincidencianoocurrir.

...O hacer que no se active cuando se utiliza el archivo de installer.phpy main.installer.phpel directorio de/dup-installer/

El Content-Security-Policy: upgrade-insecure-requests;encabezado de respuesta HTTP solo afecta a los activos vinculados, no a la navegación de nivel superior. Entonces esto no se aplica a installer.phpy main.installer.phpde todos modos. Si estas solicitudes están siendoactualizado(o, más probablemente, "redireccionado") entonces algo más está haciendo eso.

información relacionada