PHP - Saber qué url externa provoca el error 404

 
Vista:
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 19/06/2020 18:58:40
Hola,

He migrado una web que tenía hecha antes en Wordpress a HTML y PHP puro por temas de optimización y a la vez he cambiado algunas urls.

La web en cuestión es www.parahacerdeporte.net. El problema que tengo es que estoy viendo a través de Google Analytics muchas visitas a la página de 404, cosa que quiere decir que desde algún sitio se está accediendo a enlaces rotos.

La web a nivel interno no tiene ningún enlace roto (comprobado con Xenu y Screaming Frog) por lo tanto los enlaces erróneos vienen de fuera. El problema es que he hecho todas las redirecciones 301 de enlaces que he encontrado indexados de mi web, pero por lo que se ve, se me están escapando algunos.

A ver si me podéis inspirar sobre cómo podría saber desde que enlace se está accediendo a mi web que acaba a la página 404. Había pensado poner alguna especie de log o alguna manera de verlo a través del Analytics pero no sé cómo saber que url es la incorrecta con la que se entra a la web.

¿Alguna sugerencia?

¡Gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 19/06/2020 20:28:18
Gracias por tu respuesta pero no... se me ha pasado comentar que obviamente tengo tambien el Webmaster tools puesto y no tengo ningún error, todas las páginas son válidas, por eso necesito algun sistema un poco más avanzado para averiguar que está pasando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por joel (1269 intervenciones) el 20/06/2020 09:07:54
Entonces, lo que tienes que revisar es el log del servidor web, ahí veras las redirecciones a la pagina 404 y sabrás que urls son redireccionadas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 20/06/2020 12:20:40
Uff nada... en el log no sale nada relacionado con el 404 de esta web, aunque he aprovechado para corregir errores en otras web, en la de parahacerdeporte.net no sale nada... y si intento averiguarlo con el analytics me sale (entrance) como página anterior...
Tendría que haber alguna manera de saber que página ha provocado ese error 404 al llegar a la página 404...
¿Más ideas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por joel (1269 intervenciones) el 20/06/2020 12:25:01
En el log del servidor web debería salir, ya que es una redirección... y una pagina que carga... seguro que no aparece?? si no esta ahí que guarda todo lo que pasa en el servidor web...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 20/06/2020 12:32:04
Que va, además, me paso el dia revisando logs ya que soy programador y te puedo asegurar que en log del hosting no sale nada jaja
Igualmente ahora que he corregido errors que salian en otras webs que tengo, voy a limpiarlo entero y miraré a ver si sale algo pero ya te digo que no hay nada relacionado con esta web.

¿Crees que es factible montar un sistema de logs que al llegar a la página 404 me diga de que página viene? Y si esto es posible claro porque ni idea...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por joel (1269 intervenciones) el 20/06/2020 19:34:12
Si, es una buena idea Mk, no lo había pensado...

Desde PHP, puedes saberlo con: HTTP_REFERER desde PHP
1
$_SERVER["HTTP_REFERER"];
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 22/06/2020 11:55:39
Gracias! Lo probaré esta semana y te digo a ver si lo consigo con el referer...

Aunque si es visita directa de google, ¿sabes si va a funcionar o saldrá referer como google en lugar de la página a la que ha intentado acceder?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 22/06/2020 20:07:59
Al final lo he conseguido solucionar rebuscando un poco con la idea de la variable esta, aunque el referer no funciona, viene siempre vacío.

La solución que he encontrado es montar un sistema de logs que se lance cada vez que se redirige a la página 404 y que en ese log se apunte la variable:

1
$_SERVER['REQUEST_URI']

Gracias a ella se puede ver que página ha solicitado el usuario. Y respondiéndome a mi pregunta, aunque la visita venga de Google, devuelve la página a la cual ha intentado acceder.

Pero esto no funciona de por sí, sino que en el htaccess hay que modificar el ErrorDocument (por lo menos en mi caso) para que use la ruta relativa de la página 404 (yo tenia ruta absoluta con el dominio)

1
ErrorDocument 404 /404.php

Muchas gracias @joel por tu ayuda, ahora podré ver que url me he dejado por redireccionar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por joel (1269 intervenciones) el 23/06/2020 07:32:56
Gracias por compartirlo Mk!!! muy interesante!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 20/06/2020 12:23:01
Si entra en otro dominio distinto obviamente no va a mi web. Y si el usuario entra a mi web con una página mal escrita debería ver a cuál página ha intentado acceder, siempre que sea dentro de mi dominio.

El caso que expones no tiene sentido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Kathyu (905 intervenciones) el 22/06/2020 11:27:26
Eso me pasa por meque y meterme con los expertos, esta bien don dabelotodo.

Ni siquiera comprendió mi ejemplo super básico -_-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-2
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 22/06/2020 11:52:38
Vamos a ver...

el ejemplo "super básico" que expones es que el usuario escribe mal el dominio principal de la web. Cambia una c por una s.
Este cambio provoca que el dominio ya no sea el mismo y por lo tanto jamás provocará un error 404 en mi dominio. Nunca quedará reflejado en mi analytics o en el search console un error en otro dominio ya que sería un problema muy grave de privacidad.

Otra cosa sería que un usuario fuese a www.miweb.com/pajina en lugar de www.miweb.com/pagina. Al ser el mismo dominio, este error SI que quedaría reflejado en mi analytics redirigiéndose a la página 404.

Por lo tanto, reitero lo dicho, el ejemplo que has expuesto no tiene sentido. (sin mal rollo)

Y aunque sea problema del usuario que escribe una página interna mal, es bueno saber que error se ha cometido para poder sacar un patrón y realizar una redirección 301, para que futuros visitantes que escriban mal, acaben en la página correcta.

(y si lo supiese todo no estaría aquí preguntando ;))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Kathyu (905 intervenciones) el 22/06/2020 12:49:24
El ejemplo era ese, la letra errónea en un link N.

Creo que me falto poner la ultima parte. El nombre mal escrito de un archivo ya dentro de tu dominio. Supongo que a algunos se les debe explicar letra por letra
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-3
Comentar
Imágen de perfil de Mk
Val: 50
Ha disminuido su posición en 35 puestos en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Mk (22 intervenciones) el 22/06/2020 13:06:06
Última vez que te contesto ya porque el tema se esta hiendo hacia otro lado que no es el principal.

Por favor no vayas faltando el respeto a la gente para intentar justificarte.

Arriba te he dado la explicación de por qué tu respuesta no es válida. Si querías decir lo que he dicho yo solo hace falta escribirlo, la gente no es adivina. Y además, si lo que quisiste decir es que se pueden equivocar al escribir el nombre de una página interna pues OK, pero eso no responde a mi pregunta inicial.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Saber qué url externa provoca el error 404

Publicado por Kathyu (905 intervenciones) el 22/06/2020 13:19:35
Decir la verdad no es faltar al respecto, al igual que usted me la ha dicho, y no ha visto que me he puesto a llorar por lo que dice o si?

Razón tuvo cuando dijo el porque no comprendió mi ejemplo. Simplemente yo se lo he confirmé
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-3
Comentar