2012-01-07 12 views
11

Nie tak dawno temu, przeniosłem z xampp do wamp
a teraz kiedy wszedłem mojej stronie pojawił się ten błąd:WAMP .htaccess daje Internal Server Error po przeprowadzce z XAMPP

Internal Server Error Serwer napotkał błąd wewnętrzny lub błąd konfiguracji i nie można ukończyć żądania. Proszę skontaktować się z administratorem serwera admin @ localhost i poinformować go o czasie wystąpienia błędu oraz o wszystkim, co może być przyczyną błędu. Więcej informacji o tym błędzie może być dostępnych w dzienniku błędów serwera.

Kiedy użyłem tego kodu w pliku .htaccess:

<FilesMatch "\.(pdf|swf|js|css)$"> 
    Header set Cache-Control "max-age=604800" 
</FilesMatch> 

<FilesMatch "\.(html|cgi|php|htm)$"> 
    Header set Expires "Thu, 01 Dec 2003 16:00:00 GMT" 
    Header set Cache-Control "no-store, no-cache, must-revalidate" 
    Header set Pragma "no-cache" 
</FilesMatch> 


AddOutputFilterByType DEFLATE text/plain 
AddOutputFilterByType DEFLATE text/html 

<Files *.js> 
    SetOutputFilter DEFLATE 
</Files> 

<Files *.css> 
    SetOutputFilter DEFLATE 
</Files> 

Jak mogę rozwiązać ten problem?


znalazłem apache_error.log:

[Sat Jan 07 13:58:06 2012] [alert] [klient 127.0.0.1] C: /wamp/www/website/.htaccess : Nieprawidłowe polecenie „Nagłówek”, być może błędnie lub zdefiniowane przez moduł nie ujęte w konfiguracji serwera, odsyłający: localhost

+3

Wymaga ona mieć mod_headers.c. Spróbuj tak: ' Zestaw nagłówków [twoje_opcje] ' – ZeroSuf3r

+0

Co powinienem napisać w "twoich_opcjach"? – user1123379

+0

Wymienia opcje, które opublikowałeś przed – MarkSmits

Odpowiedz

25

w wamp serwera kliknij na apache, modułów Apache i kliknij (znak) na rewrite_module i ponownie wamp serwer twój problem został rozwiązany

+1

Istnieje już znak, i nadal robi ten błąd – user1123379

+14

Działa, jeśli włączam 'headers_module'. – XP1

15

Jak powiedział XP1, odpowiedzią na to jest włączenie modułu headers_module w WAMP.

Albo użyć interfejsu WAMP lub dodać do swojej httpd.conf

LoadModule headers_module modules/mod_headers.so 
0

myślę wykonywanie poleceń plików .htaccess moduł rewrite z apache powinien być włączony, ale jest domyślnie wyłączone.

Jeśli używasz WAMP, po prostu kliknij ikonę serwera wampira na pasku zadań -> Apache -> Moduły Apache. Spowoduje to wyświetlenie listy modułów. Następnie przewiń w dół, aby znaleźć przepis przerobiony i kliknij go. Po kliknięciu na nią WAMP zostaje ponownie uruchomiony z włączonym modułem przepisywania.

Myślę, że jeśli aktywujesz ten moduł, może to rozwiązać Twój problem.

1

Po wielu poszukiwaniach w WAMP moduł nagłówków nie włączył modułu mod_headers. Możesz włączyć mod_headers w pliku httpd.conf. Na początku wyświetlana jest lista modułów po prostu znajdź mod_header i usuń # na początku i zrestartuj WAMP. Teraz moduł mod_headers zostanie włączony i załadowany.

1

Go To Wampmanger LeftClick, Apache Następnie ApacheModules i check (rewrite_module), restart Apache, to będzie ok

11

Jeśli umożliwiając mod_headers nie rozwiązać problemu, to jest spowodowane AddOutputFilterByType

Można to naprawić, włączając inny moduł, mod_filter.

Prawdopodobnie warto też dodać kod "ifModuł", jeśli ustawienia serwera zostaną kiedykolwiek zresetowane lub migracja projektu do innego serwera. Ten pracował dla mnie:

<IfModule mod_filter.c> 
AddOutputFilterByType DEFLATE text/plain 
AddOutputFilterByType DEFLATE text/html 
AddOutputFilterByType DEFLATE text/xml 
AddOutputFilterByType DEFLATE text/css 
AddOutputFilterByType DEFLATE application/xml 
AddOutputFilterByType DEFLATE application/xhtml+xml 
AddOutputFilterByType DEFLATE application/rss+xml 
AddOutputFilterByType DEFLATE application/javascript 
AddOutputFilterByType DEFLATE application/x-javascript 
</IfModule> 
+3

włączony moduł do przepracowywania, moduł nagłówków i moduł filtrów, aby działał – jayadevkv

+0

Ten działał dla mnie ... – Khan

1

Dodaj to i kod powinien działać dobrze

<IfModule mod_expires.c> 
<filesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$"> 
Header set Cache-Control "max-age=2628000, public" 
</filesMatch> 
</IfModule> 
+0

Myślę, że powinno to być 'mod_headers.c' zamiast' mod_expires.c', ponieważ używasz "Cache-Control: max-age "buforowanie a nie" Wygasa "buforowanie. –

Powiązane problemy