Habilitar el módulo rewrite en Apache

ApacheWAMP

El módulo mod_rewrite sirve para poder reescribir la URL del navegador de modo que no tenga por qué hacer referencia a archivos físicos del servidor, sino que nosotros podremos parsear y redirigir las peticiones a nuestro antojo a scripts personalizados que mostrarán el contenido de una base de datos o cualquier otra cosa que se nos ocurra.

Este módulo no estará activado por defecto en Apache tanto si lo instalamos a solas como si lo instalamos formando parte de WAMP o XAMPP, por lo que tendremos problemas a la hora de crear aplicaciones dinámicas o trabajar con frameworks de PHP o gestores de contenido como WordPress. Para cambiar la configuración deberemos hacer lo siguiente:

Abrir el archivo de configuración de Apache usando un editor de texto como el bloc de notas o notepad++. Este archivo se localiza en:

[directorio-de-apache]/conf/httpd.conf

O si utilizamos WAMP:

[directorio-de-wamp]\bin\apache\Apache2.4.4\conf\httpd.conf

Seguidamente buscamos dentro del archivo la siguiente línea:

#LoadModule rewrite_module modules/mod_rewrite.so

Debes eliminar el símbolo # del inicio de la misma, de modo que quede así:

LoadModule rewrite_module modules/mod_rewrite.so

El último paso será buscar la línea «AllowOverride None» y reemplazarla por «AllowOverride All«. Es muy importante realizar ésto ya que no aparece en gran parte de los tutoriales que podáis encontrar y hasta dar con ello, los quebraderos de cabeza pueden ser enormes si es la primera vez que configuráis Apache.

Finalmente guardamos el archivo y reiniciamos el servidor para que los cambios tengan efecto.


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

3 comentarios en “Habilitar el módulo rewrite en Apache

  1. Gracias por tu aporte.

    He intentado hacerlo pero cuando habilito la linea LoadModule rewrite_module modules/mod_rewrite.so y reinicio el servidor apache me sale el error : Internal Server Error

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”