http://www.supagina.com/web/index.php?mod=news&id=2345Y queremos cambiarla por esta otra:
http://www.mipagina.com/web/noticias/2345.htmlEntonces deberíamos crear el directorio "noticias" (sin comillas) y allí subir un archivo .htaccess con la siguiente regla
RewriteEngine on RewriteBase /web/ RewriteRule ^noticias/(.*).html$ index.php?mod=news&id=$1Si quisiéramos darle un poco mas de seguridad podríamos utilizar expresiones regulares más exactas, por ejemplo, que solo se permitan números entre 1 y 6 caracteres
RewriteEngine on RewriteBase /web/ RewriteRule ^noticias/([0-9]{1,6}).html$ index.php?mod=news&id=$1Jugando con expresiones regulares podrás adaptar todas tus URL's complejas a URL's fáciles de recordar.
Deny from allEsto ultimo se utiliza mucho en, por ejemplo, directorios en donde se guardan los módulos de un sitio, ya que podremos incluir el archivo desde php, pero un extraño no podrá ingresar al archivo tipeando su dirección.
RewriteEngine on RewriteRule ^web/noticias/([0-9]{1,6}).html$ index.php?mod=news&id=$1Un saludo.
Se refiere a que tu en el navegador escribes “http://www.mipagina.com/web/noticias/2345.html” y el script lo recibe como si hubieras escrito “http://www.supagina.com/web/index.php?mod=news&id=2345”.
Por cierto, hay que tener cuidado con los enlaces relativos (./ ../) ya que el navedador se confunde. Si se está en la página http://mipagina.com/web/noticias/2345.html, el enlace tiene que ser 1000.html (o ./1000.html) y no ./noticias/1000.html u otra cosa…