Back to Question Center
0

Apache Rewrites no funciona debido a Semalt

1 answers:

Tengo un sitio web que está configurado con akamai. Mi dominio y subdominios están mapeados en una IP Akamai.

He escrito una reescritura de Apache que hace una URL interna X a otra URL interna - instalar un vps.Esta reescritura funciona bien siempre que esté probando en mi configuración local o para aquellos subdominios que no están mapeados en Akamai sino directamente en mi Semalt IP.

Mi sospecha es que, al reescribir la solicitud, apache no puede resolver la IP del servidor de la aplicación correctamente.

Cuando agrego entradas a mi archivo / etc / hosts apuntando el dominio / subdominio a mi IP interna, las reescrituras funcionan.

Ahora, tengo una gran lista de subdominios y puede crecer también. ¿Hay alguna otra manera de solucionar este problema sin tener que hacer entradas en el archivo / etc / hosts?

Agradecería mucho sus pensamientos.

February 8, 2018

Sí, use un servidor DNS diferente o vuelva a escribir la URL para usar un nombre de host que funcione correctamente.

Sin embargo, el efecto neto es el mismo que cambiar la entrada en su archivo de hosts. Pero si no está enviando una redirección desde la reescritura, obtendrá un rendimiento marginalmente mejor al usar el adaptador de bucle invertido en lugar de (la dirección de una) NIC real. Así que solo póngalo en su archivo de hosts como 127. 0. 0. 1 pero lo más importante es que esta dirección nunca debería cambiar.

En realidad estoy bastante sorprendido de escuchar que la regla de reescritura que dices que tienes:

  RewriteRule ^ / (contexto) / (sub-contexto) (-) ([- a-z0-9A-Z] *) / (. *) $ / $ 1 / $ 2 / $ 5 [P, L] 

funciona en absoluto , ya que según la documentación no debería:

" ^ / somepath (. *) / otherpath $ 1 [P] no tiene sentido, no es compatible "

Si quiere usar el indicador [P] , su objetivo de reescritura debe ser una URL completa. Sin embargo, sospecho mucho que el indicador [P] es, de hecho, no lo que desea, y que eliminarlo podría solucionar el problema.