Lỗi máy chủ nội bộ - htaccess


84

Tôi có một tệp htaccess hoạt động hoàn hảo trên máy chủ lưu trữ nhưng khi tôi đặt nó trên cục bộ, nó cho tôi thấy lỗi này:

Lỗi máy chủ nội bộ

Máy chủ gặp lỗi nội bộ hoặc định cấu hình sai và không thể hoàn thành yêu cầu của bạn.

Vui lòng liên hệ với quản trị viên máy chủ, admin @ localhost và thông báo cho họ về thời gian xảy ra lỗi và bất kỳ điều gì bạn đã làm có thể gây ra lỗi.

Thông tin thêm về lỗi này có thể có sẵn trong nhật ký lỗi máy chủ.

Tôi tìm thấy cảnh báo này trong tệp nhật ký lỗi:

[Thứ Ba ngày 17 tháng 4 10:02:25 2012] [alert] [client 127.0.0.1] D: /wamp/www/jivan/sql/.htaccess: Lệnh 'Header' không hợp lệ, có thể sai chính tả hoặc được xác định bởi một mô-đun không có trong cấu hình máy chủ

đây là mã tệp htaccess của tôi:

  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>

máy chủ cục bộ của tôi chạy bằng wamp và tôi cũng đã bật viết lại mô-đun !!!

vậy thử nghiệm là gì? !!

Câu trả lời:


128

các Headerchỉ thị là trong mod_headersmodule apache. Bạn cần đảm bảo rằng mô-đun đó được tải vào máy chủ apache.


8
Cảm ơn ... nó được đặt tên như headers_module trong danh sách module :)
Saidulu Buchhala

3
Đối với kẻ lười biếng chỉ cần làm: <IfModule headers_module> ... </IfModule>
AntonioCS

97

Các bước để bật mô-đun HEADERS

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

6
Đây có thể là một lớp lót: sudo a2enmod headers && sudo service apache2 restart(sẽ hoạt động trên các bản phân phối dựa trên Debian).
Amal Murali

Đó phải là câu trả lời chính xác, cảm ơn bạn!
RafaelB13

33

Trên dòng lệnh của bạn:

Cài đặt mod_headers

sudo a2enmod headers

và sau đó khởi động lại apache

service apache2 restart

12

Thử đi:

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

Bạn đã khởi động lại WAMP sau khi cài đặt / bật chưa?


6

Trong Máy Ubuntu / Debian, bạn có thể chỉ cần chạy lệnh này:

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

và nên được đặt tất cả .....


0

Câu trả lời này phù hợp với tôi

<IfModule mod_headers.c> Header set [your_options] </IfModule>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.