Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/12/2019, 06:03
prueba230683
 
Fecha de Ingreso: abril-2011
Mensajes: 170
Antigüedad: 13 años
Puntos: 68
Respuesta: Problemas con Virsualhost redirect

Efectivamente el código de WP te lo está reescribiendo, ya que RewriteRule se ejecuta en bucle hasta que ya no queden URLs por reescribir. Un truco para evitar esto es poner al principio de tu .htaccess lo siguiente:

Código Apache:
Ver original
  1. RewriteEngine On
  2. RewriteCond %{ENV:REDIRECT_STATUS} 200
  3. RewriteRule (.*) - [L]

Si la variable del entorno REDIRECT_STATUS es igual a 200, significa que ya se ha hecho una redirección, por tanto con RewriteRule (.*) - [L] le indicas que deje la URL como está, en lugar de seguir aplicando el resto de reglas que hay más abajo.

En tu caso quedaría así:

Código Apache:
Ver original
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine On
  3. RewriteCond %{ENV:REDIRECT_STATUS} 200
  4. RewriteRule (.*) - [L]
  5. </IfModule>
  6.  
  7. <IfModule mod_rewrite.c>
  8. RewriteEngine On
  9.  
  10. RewriteCond %{HTTPS} =off
  11. RewriteCond %{REQUEST_URI} !^/wp-json/?
  12. RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R=301]    
  13.  
  14. RewriteCond %{HTTPS} =on
  15. RewriteCond %{REQUEST_URI} ^/wp-json/?
  16. RewriteRule (.*) http://%{HTTP_HOST}/$1 [L,R=301]
  17. </IfModule>
  18.  
  19. <IfModule mod_rewrite.c>
  20. RewriteEngine On
  21. RewriteBase /
  22. RewriteCond %{HTTPS} on [OR]
  23. RewriteCond %{SERVER_PORT} ^443$ [OR]
  24. RewriteCond %{HTTP:X-Forwarded-Proto} https
  25. RewriteRule .* - [E=WPR_SSL:-https]
  26. RewriteCond %{HTTP:Accept-Encoding} gzip
  27. RewriteRule .* - [E=WPR_ENC:_gzip]
  28. RewriteCond %{REQUEST_METHOD} GET
  29. RewriteCond %{QUERY_STRING} =""
  30. RewriteCond %{HTTP:Cookie} !(wordpress_logged_in_.+|wp-postpass_|wptouch_switch_toggle|comment_author_|comment_author_email_) [NC]
  31. RewriteCond %{REQUEST_URI} !^(/(.+/)?feed/?|/(?:.+/)?embed/|/finalizar-compra/(.*)|/carrito/|/mi-cuenta/(.*)|/wc-api/v(.*)|/(index\.php/)?wp\-json(/.*|$))$ [NC]
  32. RewriteCond %{HTTP_USER_AGENT} !^(facebookexternalhit).* [NC]
  33. RewriteCond "%{DOCUMENT_ROOT}/wp-content/cache/wp-rocket/%{HTTP_HOST}%{REQUEST_URI}/index%{ENV:WPR_SSL}%{ENV:WPR_WEBP}.html%{ENV:WPR_ENC}" -f
  34. RewriteRule .* "/wp-content/cache/wp-rocket/%{HTTP_HOST}%{REQUEST_URI}/index%{ENV:WPR_SSL}%{ENV:WPR_WEBP}.html%{ENV:WPR_ENC}" [L]
  35.  
  36. </IfModule>
  37. # END WP Rocket
  38. # BEGIN WordPress
  39. <IfModule mod_rewrite.c>
  40. RewriteEngine On
  41. RewriteBase /
  42. RewriteRule ^index\.php$ - [L]
  43. RewriteCond %{REQUEST_FILENAME} !-f
  44. RewriteCond %{REQUEST_FILENAME} !-d
  45. RewriteRule . /index.php [L]
  46. </IfModule>

Un saludo