Cómo invertir el proxy con o sin barra diagonal


11

Tengo un servidor web Apache que necesita invertir el proxy de un sitio. Entonces, example.com/test/o example.com/testtire del mismo otro servidor web. He configurado un proxy inverso para el que no tiene la barra diagonal como esta:

ProxyPass /test http://othersite.com/test
ProxyPassReverse /test http://othersite.com/test

Pero no funciona con una barra inclinada final.

¿Algunas ideas? He intentado redirigir de /test/a /testsin suerte.

Gracias.

Respuestas:


18

¿Has intentado reescribir la url?

RewriteEngine on 
RewriteRule ^/test$ /test/ [R]

ProxyRequests Off       
ProxyPreserveHost On

ProxyPass    /test/   http://othersite.com/test/
ProxyPassReverse /test/  http://othersite.com/test/

1

¿Qué quieres decir con que no funciona con una barra inclinada? ¿Redirige al lugar equivocado? ¿Da un error 404? Esto es lo que solía configurar un proxy inverso y ocultar la fuente del resto del mundo.

ProxyRequests off
<Location /guides>
  ProxyPass http://blog.domain.com
  ProxyPassReverse http://blog.domain.com
  ProxyPassReverse /
  ProxyHTMLEnable On
  ProxyHTMLURLMap / /guides
  ProxyHTMLURLMap http://blogs.domain.com /guides
  RequestHeader unset Accept-Encoding
  RequestHeader set MySpecialHeader secretkey
  #LogLevel proxy:debug
</Location>

Puede usar esto para probar su proxy:

$ curl -I http://localhost:81/guides/top5
HTTP/1.1 301 Moved Permanently
Location: http://localhost:81/guides/top5/
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.