Apache2'nin (hatasız) .htaccess başlık yönergelerini ayrıştırmasını nasıl sağlayabilirim?


35

Sayfaların bir 500 dahili sunucu hatasıyla yüklenmesini sağlıyorum, çünkü Apache'nin izin verecek şekilde yapılandırılmadığı bir yönergeye inanıyorum.

AllowOverride'ın hepsine ve aşağıdakileri de içeren bir .htaccess dosyasına ayarlıyorum:

<FilesMatch "\.(eot|ico|pdf|flv|jpg|jpeg|png|gif|svg|swf|ttf|woff)$">
Header set Cache-Control "max-age=31536000, public"
Header set Expires "Wed, 23 Apr 2014 17:00:01 UTC"
</FilesMatch>

/var/log/apache2/error.log şu özelliklere sahiptir:

[Sat Jul 20 15:12:36 2013] [alert] [client 24.15.83.241] /home/jonathan/.htaccess: Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration

Apache2'nin 'Başlık' yönergesini uygun şekilde kullanması için belirtmem gerekenler nelerdir?

Yanıtlar:


64

Apache2 ile, sadece çalıştırın a2enmod headersve sonra sudo service apache2 restartbaşlık modülünü otomatik olarak kuracaktır.


2
Bu cevap kabul edilmeli
Himanshu Mishra

1
Aslında bu cevap en iyisidir, ancak bazı modern GNU / Linux dağıtımlarının (en son Debian gibi) systemdhizmetleri yönetme konusunda farklı bir sözdizimine dayandığını ve buna dayandığını söyleyebilirim . Yeniden Apache: sudo systemctl restart apache2.service. Ancak, artık bir geri dönüş işlevi var ve bu nedenle eski sudo servicekomut işe yarıyor. Ancak en yakın gelecekte çalışmayı durdurabilir.
TranslucentCloud

a2enmodolduğu /usr/sbinsistemimde. Bu benim sudo olmayan kullanıcının PATH'inde değil, bu yüzden root olmadıkça a2enmod keşfedilemez. TL; DR: sudo a2enmodyerine koş a2enmod.
Michael Hoffmann

14

Gibi bir satır eklemeniz gerekir:

LoadModule headers_module modules/mod_headers.so

Bunun için httpd.confdestek eklemek için. Ubuntu ve benzerlerinde bunu yapabilirsiniz a2enmod headersve konfigürasyonunuzda otomatik olarak etkinleştirir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.