05 mayo 2009

Habilitar mod_rewrite para urls amigables DEBIAN

Habilitar el mod_rewrite para uso de urls amigables

# a2enmod rewrite

Enabling module rewrite.

Run '/etc/init.d/apache2 restart' to activate new configuration!

Reiniciar los servicios de apache

#/etc/init.d/apache2 restart

probar la configuracion con script php

Crear un virtualHost con soporte de lectura .htaccess, editar el archivo /etc/hosts/apache2/sities/available/default , al final del archivo agregue las siguientes lineas:

<VirtualHost *:80>
ServerName www.urlamiga.com
DocumentRoot /var/www/examples/php/urls/
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
DirectoryIndex index.php index.html index.htm
</virtualhost>

Nuevamente reiniciamos los servicios de apache.
# /etc/init.d/apache2 force-reload

Editar el archivo de hosts /etc/hosts, y en la linea 127.0.0.1 agregar el ServerName del VirtualHost antes creado:

127.0.0.1 localhost www.urlamiga.com

Guardar los suiguientes ficheros (rewrite.php y .htaccess) en /var/www/examples/php/urls/

rewrite.php
Crea un archivo php llamado rewrite.php con el siguiente codigo:

<h2 align=center>
<? if(isset($_GET['link'])){
if($_GET['link']==1){echo"Enlace sin usar mod_rewrite";}
elseif($_GET['link']==2){echo"Felicitaciones!! Tu has usado mod_rewrite de Apache y funciona correctamente";}
else{echo"Verifica el modulo mod_rewrite de tu Apache";}
}
?>
</h2>
<hr>
<head>
<title>Probar mod_rewrite en Apache Linux&lt;/title>
</head>
<body>
<h1>Probar mod_rewrite en Apache Linux</h1>
<p><a href="rewrite.php?link=1">Enlace uno </a> = rewrite.php?link=1</p>
<p><a href="link2.html">Enlace 2</a&gt; = link2.html</p>
<ul>
<li>Prueba el enlace uno</li>
<li>Luego prueba el enlace dos</li>
<li>Si con el enlace dos te sale que la p�gina no fue encontrada entonces no tienes activado los .htaccess del apache o no funciona el mod_rewrite</li>
</ul>
</body>
</html>


.htaccess
  1. RewriteEngine On
  2. RewriteRule ^link([^/]*).html$ rewrite.php?link=$1 [L]


Resultados:





2 comentarios:

Ruben Dario Diaz Torres dijo...

Funciona al pelo felicidades!!! un pequeño detalle que no mencionan ej joomla a la hora de activar mod_rewrite Gracias a Dios que te encontre!!!

Unknown dijo...

oye bro as un video no seas mala onda es que me pierdo,

eso es lo mismo que un alias? en wampserver?

Excel 2013, convertir mes en texto a numero

Si tienes un mes en formato ENERO este lo cambiara a 02, funciona en la versión de Excel 2013, solo se tienen que reemplazar J2 por la celda...