La URL es la siguiente http://local.example.com/features.html y lo que necesito es agregar un texto como "país" http://local.example.com/us/feature.html pero con el código Cuando hago clic en la URL, el sitio muestra un error 404
Esto es solo visual sin crear una subcarpeta de EE. UU.
El código...
RewriteEngine On RewriteCond %{HTTP_HOST} local.example.com$ [NC] RewriteCond %{HTTP_COOKIE} location=us [NC] --> CHECK COOKIE FOR ACTION RewriteCond %{REQUEST_URI} !^/us/ --> EXCLUDE US FOR REDIRECT LOOP RewriteCond %{REQUEST_URI} !^/blog/ --> EXCLUDE BLOG FOLDER WITH WORDPRESS RewriteRule ^(.*)!\.(css|js|png|jpg)$ http://local.example.com/us/$1 [R=302,L]RewriteRule ^(.*)!\.(css|js|png|jpg)$ http://local.example.com/us/$1 [R=302,L]
El patrón RewriteRule no coincidirá con la URL solicitada (¡debido a un error ! ), por lo que esta directiva en realidad no hará nada. A partir de esto, también asumo que desea excluir las solicitudes de archivos CSS, JS, .png y .jpg . También tiene una condición que excluye las solicitudes realizadas a un subdirectorio /blog/ , sin embargo, ¿no ha mencionado esto en su pregunta?
¿También hace referencia a una cookie en el código? Sin embargo, no ha mencionado esto en su pregunta y esto no funcionará en su estado actual (ya que no estará presente en las solicitudes iniciales), así que lo ignoraré por ahora.
Pruebe lo siguiente en su lugar:
RewriteEngine On RewriteCond %{HTTP_HOST} ^local\.example\.com$ [NC] RewriteCond %{REQUEST_URI} !\.(css|js|png|jpg)$ RewriteCond %{REQUEST_URI} !^/blog/ RewriteRule !^us/ /us%{REQUEST_URI} [R=302,L] Los estados anteriores, dada una solicitud de /foo/bar ...
/us/Host local.example.com.css , .js , .png o .jpg/blog//us/foo/bar A menos que tenga varios hosts en esta cuenta, ¿no necesita verificar explícitamente el encabezado Host como parte de la regla?