X

Solucionar error Forbidden 403 en WordPress al entrar desde facebook

Hoy en día es completamente normal compartir todo tipo de contenido en redes sociales, tal es así que se puede convertir en una de las fuentes principales de cualquier contenido online. Si estás experimentando el problema de que al acceder desde un contenido compartido en facebook a tu wordpress suelta un Forbidden, esta es tu solución.

Generalmente puede pasar por dos motivos dependiendo de la configuración de nuestro servidor. O bien por una regla en el htaccess que nos esté devolviendo ese problema, causado generalmente por algún plugin de seguridad que va a considerar parte de la url como peligrosa y por eso nos va a dar error de acceso prohibido (403).

El segundo motivo es por el mod_rewrite y su blacklist, que dependiendo donde tengamos el hospedaje, bastará con acceder a esa lista negra y eliminar la url de facebook.com/l.php que en algunos casos la introducen a pesar de no dejar muy claro el motivo.

De todas formas, todo esto se puede solucionar desde htaccess, ya que con una simple redirección vamos a conseguir que desaparezca esa url que nos da el problema y se quede la dirección buena y amigable. Además como solo afecta a esta url que va a venir de facebook no va a afectar para nada al posicionamiento de nuestra página, ya que trabaja únicamente sobre las solicitudes que se hacen con la dirección de facebook.

Arreglar error de WordPress y Facebook, Forbidden 403

Antes que nada vamos a abrir nuestro ssh o sftp, y vamos a editar el archivo .htaccess con nuestro editor favorito

  1. Agregar la redirección
    Como esto lo tenemos que hacer antes de cualquier mod de seguridad de wordpress, vamos a introducir al principio del archivo .htaccess el siguiente contenido
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{QUERY_STRING} fb_action_ids [NC]
    RewriteRule ^(.*)$ /$1? [R=301,L]
    </IfModule>

    En caso de que en la url que viene de facebook no exista la variable fb_action_ids, simplemente introduciremos una variable ( &variable=) que aparezca en la url.

Con este simple gesto habremos conseguido que todo el tráfico que daba problema viniendo de facebook con esta dirección, se redireccione a la misma dirección sin variables (que es la url original del artículo), cargando la página correcta antes que ningún otro filtro de seguridad evitando que las visitas de facebook se queden atascadas.

Puede no ser la mejor solución, pero dependiendo de las visitas que vengan de facebook, y teniendo en cuenta que es transparente para el usuario, es una opción sencilla, fácil de hacer y completamente funcional.

Tienes otra solución? cómo lo has hecho tú?

VicHaunter:

Ver comentarios (2)

  • Hola! Gracias por tu artículo, sirve de gran ayuda. Lo he probado y de momento no me ha funcionado pero es la solución más clara que veo. Antes no me ocurría, pero con los dos últimos posts me está ocurriendo y no sé por qué. He insertado ese código tal cual en el archivo que dices desde el hosting, pero sigue igual. ¿Sabes por qué en algunos posts sale forbidden y en otros no? ¿Dónde tengo que insertar exactamente ( &variable=)? Muchas gracias!

    • Revisa por si tienes algun plugin que te modifique el htaccess, como el wp security o similares, quizás esté entrando en conflicto.

Artículo relacionado
Los comentarios de Disqus están cargando....

Como todos, usamos cookies.