es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo eliminar un parámetro QUERY_STRING específico en .htaccess

Necesito una solución adecuada para eliminar el parámetro de URL.

Ejemplo:

Entrada: https://www.hostever.com/blackfriday/?fbclid=IwAR3s1aVKUQELAb0EGW9mh4qyR-i9ZqfNjFFB6xvMoNRal2cH–lKofqHM

Salida: https://www.hostever.com/blackfriday/

Así que eliminará fbclid=.

Entrada: https://www.hostever.com/?s=blogger
Salida: https://www.hostever.com/?s=blogger
No es necesario cambiar otros parámetros excepto fbclid=.

Solo necesito eliminar fbclid= de la URL.

Actualmente estoy usando esto, pero el problema está en muchos parámetros.


RewriteEngine On
RewriteCond %{QUERY_STRING} ! =””
RewriteCond %{QUERY_STRING} !^p=.*
RewriteCond %{QUERY_STRING} !^action=.*
RewriteCond %{QUERY_STRING} !^s=.*
RewriteCond %{REQUEST_URI} !^/wp-admin.*
RewriteRule ^(.*)$ /$1? [R=301,L]

Por favor, ayúdeme. ¿Cómo puedo eliminar un parámetro específico de la URL con .htaccess?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para eliminar un parámetro específico de la URL utilizando .htaccess, se puede usar el siguiente código:

    `
    RewriteEngine On
    RewriteCond %{QUERY_STRING} ^(.*?)&?fbclid=[^&]+(&+(.*))?$
    RewriteRule ^ %{REQUEST_URI}?%1%2 [R=301,L]
    `

    Este código buscará el parámetro “fbclid” en la cadena de consulta y lo eliminará. También funcionará para URL con varios parámetros.

    Explicación del código:

    • RewriteCond %{QUERY_STRING} ^(.*?)&?fbclid=[^&]+(&+(.*))?$: Esta condición verifica si la cadena de consulta contiene el parámetro “fbclid”. (.*?)&? captura todos los parámetros antes de “fbclid”. [^&]+ captura el valor de “fbclid”. (&+(.*))? captura todos los parámetros después de “fbclid”.
    • RewriteRule ^ %{REQUEST_URI}?%1%2 [R=301,L]: Esta regla elimina el parámetro “fbclid” y construye la nueva URL utilizando los grupos capturados de la condición. %1 contiene todos los parámetros antes de “fbclid” y %2 contiene todos los parámetros después de “fbclid”. La bandera [R=301,L] redirecciona la URL permanentemente y detiene más procesamiento de reglas.

    Nota: Asegúrese de probar este código en un entorno de prueba antes de usarlo en un sitio en vivo.

Comments are closed.