Tipos MIMES
Para que el servidor de HTTP sepa que debe servir las p�ginas *.wml como p�ginas WAP debemos indic�rselo, de lo contrario el servidor responder� como que el tipo de fichero es de texto.
Para decirle al servidor que las p�ginas de extensi�n wml con p�ginas WAP existen los tipos MIME, con estos tipos indicamos al servidor como se debe comunicar con el cliente cuando le solicitan una p�gina wml.
La configuraci�n de tipos MIMES, si su servidor no est� configurado ya, es la siguiente:
Contenido |
Tipo MIME |
Extensión |
WML Source |
text/vnd.wap.wml |
wml |
Compiled WML |
Application/vnd.wap.wmlc |
wmlc |
WMLScript source |
text/vnd.wap.wmlscript |
wmls |
Compiled WMLScript |
Application/vnd.wap.wmlscriptc |
wmlsc |
Wireless Bitmap |
image/vnd.wap.wbmp |
wbmp |
DETECTOR DE NAVEGADOR WAP
Normalmente los portales wap est�n alojados en un dominio de tercer nivel del tipo http://wap.midominio.com.
Lo que a continuaci�n propongo es una soluci�n profesional que ya usan algunos portales y es una aplicaci�n que detecta desde la p�gina principal, si el usuario ha accedido desde una navegador wap o html, y redirigirlo a la version wml o html respectivamente.
Antes de nada, me gustar�a aclarar que la soluci�n de usar javascript no es viable, puesto que javascript es un lenguaje que se interpreta y se ejecuta en el navegador del usuario, pero no todos los navegadores wap permiten el uso de javascript.
La clave de este asunto est� en que tanto los navegadores wap como los navegadores html le dicen al servidor el tipo de informaci�n que esperan recibir mediante el tipo mime.
Dicha informaci�n es guardada en una variable de servidor llamada HTTP_ACCEPT.
El valor de HTTP_ACCEPT para los navegadores wap es text/vnd.wap.wml, para los navegadores html es */* (Internet explorer 6 and Netscape 6).
Podemos entender que las �ltimas versiones, al menos, de los navegadores html m�s populares sean gen�ricos a la hora de aceptar cualquier tipo de archivo del servidor (html, shtml, php, cgi, asp, cfm, cgi, xml...) , mientras que los navegadores wap en ese sentido son espec�ficos al aceptar s�lo informaci�n de tipo wml.
A continuaci�n muestro el c�digo php de un index.php que contiene tanto la versi�n wap como html en el mismo archivo.
$dime=$HTTP_ACCEPT;
if (ereg("wap.wml",$dime)){
header("Content-Type: text/vnd.wap.wml");
echo '';
?>
Hola usuario de navegador wap
}else{
print " Hola usuario de navegador html ";
}
?>
Y si se desea redirigir al usuario a una u otra versi�n, este es el c�digo del index.php, donde s�lo hay que modificar las localizaciones url de ambas versiones.
$dime=$HTTP_ACCEPT;
# By Miguel Cruz Martinez,
[email protected]
if (ereg("wap.wml",$dime))
header('Location: http://www.miurl_wap/index.wml');
else
header('Location: http://www.miurl_html/index.html');
?>