Error interno del servidor - htaccess


84

Tengo un archivo htaccess que funciona perfectamente en el host, pero cuando lo pongo en local, me muestra este error:

error de servidor interno

El servidor encontró un error interno o una mala configuración y no pudo completar su solicitud.

Comuníquese con el administrador del servidor, admin @ localhost e infórmeles de la hora en que ocurrió el error y de cualquier cosa que haya hecho que haya causado el error.

Puede encontrar más información sobre este error en el registro de errores del servidor.

Encontré esta alerta en el archivo de registro de errores:

[Mar 17 de abril 10:02:25 2012] [alerta] [cliente 127.0.0.1] D: /wamp/www/jivan/sql/.htaccess: Comando 'Encabezado' no válido, tal vez mal escrito o definido por un módulo no incluido en la configuración del servidor

este es mi código de archivo htaccess:

  RewriteEngine On
AddDefaultCharset utf-8
RewriteRule ^([0-9-]+)/keyword_show.html$ keyword_show.php?keyword_id=$1
RewriteRule ^page_(.*).html$  page.php?url=$1
RewriteRule ^([0-9-]+)/(.*)/(.*)/(.*).html$ $2.php?advertisement_cat=$1&id=$3&pagenumber=$4
RewriteRule ^([0-9-]+)/(.*)/(.*).html$ $2.php?advertisement_cat=$1&pagenumber=$3
RewriteRule ^([0-9-]+)/(.*).html$ $2.php?advertisement_cat=$1
# cache images and flash content for one month
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

# cache text, css, and javascript files for one month
<FilesMatch ".(js|css|pdf|txt)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

mi servidor local ejecutado por wamp y habilité el módulo de reescritura también !!!

Entonces, ¿cuál es el problema?

Respuestas:


129

la Headerdirectiva está en el mod_headersmódulo apache. Debe asegurarse de que el módulo esté cargado en el servidor apache.


8
Gracias ... se llama headers_module en la lista de módulos :)
Saidulu Buchhala

3
Para los perezosos, simplemente haga: <IfModule headers_module> ... </IfModule>
AntonioCS

98

Pasos para habilitar los módulos HEADERS

$ cd /etc/apache2/mods-available
$ sudo a2enmod headers
$ /etc/init.d/apache2 restart

6
Esto puede ser de una sola línea: sudo a2enmod headers && sudo service apache2 restart(debería funcionar en distribuciones basadas en Debian).
Amal Murali

Esa debería ser la respuesta correcta, ¡gracias!
RafaelB13

33

En tu línea de comando:

Instalar mod_headers

sudo a2enmod headers

y luego reinicia apache

service apache2 restart

12

Prueba esto:

<IfModule mod_headers.c> Header set [your_options] </IfModule>

¿Ha reiniciado WAMP después de instalar / habilitar?


6

En una máquina Ubuntu / Debian, simplemente puede ejecutar este comando:

sudo ln -s /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/

y debería estar todo listo .....


0

Esta respuesta funciona para mi

<IfModule mod_headers.c> Header set [your_options] </IfModule>
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.