Solo lectura

Google Chrome - Foro de ayuda

Esta página web es un archivo de los hilos antiguos de los foros de Google. Más información

Mi pagina web confunde Google Chrome con Safari

avm99963
25/04/11 3:43

Hola a todos, quería preguntarles una cosa:

Tengo una pagina web en PHP que detecta si se accede con un navegador o otro, y tengo un problema al detectar Safari. Lo que quiero hacer, es que si el navegador no soporta HTML5 no les deje acceder a la pagina web, por contener determinadas etiquetas que son propias de HTML5. Al querer mostrar el mensaje al Safari, se lo muestra, porque ha detectado que es el Safari, pero no se que ocurre que cuando la visito con Chrome también detecta que es Safari.

Código:
<?php
function is_Safari(){
   return(eregi("Safari", $_SERVER['HTTP_USER_AGENT']));
}

if(is_Safari()){
  die ("Ho sentim, però el Joc de l'Adrià 2.0 no és compatible amb el navegador Internet Explorer. Pots utilitzar el Google Chrome (recomanat), el Mozilla Firefox o l'Opera.<br><br>Gràcies!");
}
?>

Versión de Google Chrome: 12.0.742.0 DEV
Sistema operativo: Windows Vista 32 bits
Extensiones instaladas: Muchas desde hace un mes:


Gracias

(Las extensiones las pongo en otro comentario que no me cabían)

Respuestas (4)

avm99963
25/04/11 3:43
AdBlock - Versió: 2.3.30

diccionari - Versió: 1.1

El temps - Versió: 0.4.1.0

FileFactory DownloadHelper - Versió: 0.2.4

Google Dictionary (by Google) - Versió: 2.0.4

Hotmail - Versió: 1.0

Hotmail Checker - Versió: 0.2.16.3

McAfee SiteAdvisor - Versió: 3.31.132.1

MegaUpload DownloadHelper - Versió: 1.2

Mr. Bounce - Versió: 1.0.4

Page Speed - Versió: 1.11

Picnik Extension for Chrome - Versió: 1.0.7

Quick Note - Versió: 1.2.1

RapidShare DownloadHelper - Versió: 1.1.1

RealPlayer HTML5Video Downloader Extension - Versió: 1.3

Scratchpad - Versió: 2.2.4

Screen Capture (by Google) - Versió: 4.0.2

Spotify Chrome Extension - Versió: 1.0.1

Super Mario Bros. Crossover - Versió: 2.1
TinEye Reverse Image Search - Versió: 1.1



Verificador de Google Mail - Versió: 3.1



Word Search Puzzle - Versió: 1.1



Yah's Link Checker for Chrome - Versió: 1.205



YYGInstantPlay Control - Versió: 1.1.0.26
Dennis Tobar
25/04/11 5:10
Hola:

En la consola podemos leer lo siguiente en "la firma del navegador" 

Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16

Con Safari obtenemos lo siguiente:
Mozilla/5.0 (Windows; U; Windows NT 6.1; es-ES) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1

Entonces la respuesta va porque Chrome usa WebKit, al igual que Safari, por ende, identifica que ambos navegadores son iguales, lo que permite conocer al sitio web que ambos navegadores poseen el mismo peso equivalente. ¿Cómo identificar?, Pregunta si es Chrome.

Pregunta por Trident si quieres excluir Internet Explorer. ;)

Saludos!
avm99963
25/04/11 6:40
Gracias, porque no se me da bien JavaScript y menos PHP.

Perdona las molestias pero, ¿como puedo hacer lo que has dicho? Es decir, identificar Safari {1} y no dejarle pasar, pero si encuentra también Chrome {2} sí. Es que no entiendo muy bien que significan esas "firmas del navegador". Muchas gracias

{1}
Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16
Mozilla/5.0 (Windows; U; Windows NT 6.1; es-ES) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1

{2}
Dennis Tobar
25/04/11 9:09
Hola:

Al decir "firmas de navegador" es la cabecera que envía el navegador al servidor cuando haces un requerimiento. La idea de esta cabecera es que el servidor pueda identificar qué navegador tiene por delante, ya que existen versiones móviles, desktop, etc. de ciertas páginas, lo que es detectado por el navegador, el cual envía la cabecera y así sucesivamente :P.

Detectar a Internet Explorer sería más menos así[1].

Saludos