Dic
Urls amigables

La primera vez que vi esto , pensaba que creaban carpetas donde ponían los archivos htmls
, pero ya pensando bien dije esto debe ser un arreglo en el servidor web donde corre la página. Es una muy buena forma de mejorar tu posicionamiento y también te ayuda a mantener más facil tu sitio web.
Si tu manejas urls de este tipo:

lamentablemente estas OUT y por dios termina de ver este post :)
Además de que te ayuda a posicionar mejor , tambien te facilita en programar tu sitio en un solo archivo , en la última versión de wordpress ya puedes hacer esto automaticamente en la sección: Options/Permalinks .
Para implementar esto en tu sitio necesitas crear un archivo de configuración del servidor web , el más famoso y conocido archivo .htaccess. A continuación sigue estos pasos:
1: En tu editor favorito(homesite,dreamweaver,gedit,textmate etc) creas este archivo
-
<ifModule mod_rewrite.c>
-
RewriteEngine On
-
RewriteBase /
-
RewriteCond %{REQUEST_FILENAME} !-f
-
RewriteCond %{REQUEST_FILENAME} !-d
-
RewriteRule . /index.php [L]
-
</ifModule>
Explicación: Si te fijas en la linea 6 , te indica que pagina quieres cargar en todo el directorio, por ejemplo aqui es index.php , pero si estuvieras trabajando localmente en tu servidor web tendría que ser así : RewriteRule . /tu_proyecto/index.php [L]
Un ejemplo práctico con PHP:
1: Creamos la carpeta tu_proyecto en la raiz de tu servidor web Ejemplo de la dirección que debería tener:
/appserv/www/tu_proyecto
/var/www/tu_proyecto
2: Dentro tu_proyecto , creamos el archivo .htaccess
-
<ifModule mod_rewrite.c>
-
RewriteEngine On
-
RewriteBase /
-
RewriteCond %{REQUEST_FILENAME} !-f
-
RewriteCond %{REQUEST_FILENAME} !-d
-
RewriteRule . /tu_proyecto/index.php[L]
-
</ifModule>
3: Creamos el archivo php, lo que hace este archivo es recibir la url , con la función explode hacemos un array separando el /, si seguimos la lógica el ultimo elemento del array debería ser la palabra clave que forma la url y seguido de un switch para cargar la sección deseada .
-
<?
-
-
-
?>
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-
-
<html>
-
<head>
-
<title>Untitled</title>
-
<style type="text/css">
-
ul#menu{
-
list-style-type:none;
-
margin:0px;
-
padding:0px;
-
}
-
.clear{
-
clear:both;
-
}
-
-
#menu li {
-
float:left;
-
margin:5px;
-
padding:5px;
-
color:white;
-
font-weight:bold;
-
background-color:blue;
-
}
-
#menu li a{
-
color:white;
-
text-decoration:none;
-
}
-
#menu li a:hover{
-
color:red;
-
}
-
-
</style>
-
</head>
-
-
<body>
-
-
<ul id="menu">
-
<li><a href="acercade">Acerca de</a></li>
-
<li><a href="servicio">Servicios</a></li>
-
<li><a href="portafolio">Portafolio</a></li>
-
<li><a href="contacto">Contacto</a></li>
-
</ul>
-
<div class="clear"></div>
-
<p>
-
<?
-
switch($ubicacion){
-
case "acercade":
-
echo "<h1>Contenido de la pagina Acerca de</h1>";
-
break;
-
case "servicio":
-
echo "<h1>Contenido de la pagina Servicios</h1>";
-
break;
-
case "portafolio":
-
echo "<h1>Contenido de la pagina Portafolio</h1>";
-
break;
-
case "contacto":
-
echo "<h1>Contenido de la pagina Contacto</h1>";
-
break;
-
-
}
-
?>
-
-
</p>
-
</body>
-
</html>
Dejo los archivo de ejemplo para que los descargues: url amigables






Hola, excelente hace tiempo quería saber como sea hacia esto de las URLs , una pregunta en ASP como lo sería?
Publicado el Diciembre 2nd, 2007 a las 9:24 am