Xin chào tất cả các bạn, chắc hẳn các bạn đã khá quen biết với httpd server (Apache) và ít khi nghe đến lighttpd server. Nó là 1 webserver giống như apache có thể hoạt động trên môi trường Linux/Unix cũng như Windows và điều căn bản nếu bạn nghe xong là thích ngay là nó rất nhẹ. Có thể nói đây là 1 con webserver an toàn, nhanh nhẹn, khả chuyển và tối ưu cao đối với môi trường
I. Cách cài đặt
Hiện nay lighttpd đã có version 1.5 với việc hỗ trợ chuẩn h264(mp4) streaming đẳng cấp cao hơn so với version 1.4 chỉ hỗ trợ h263(flv) streaming. Ngoài ra còn 1 module nữa khá hữu ích đối với bạn đó upload_progress cho phép bạn quan sát được quá trình upload bao gồm bao nhiêu byte/byte, thời gian như thế nào …Bạn có thể download mã nguồn từ dòng lệnh shell như sau
$ wget http://lighttpd.net/download/lighttpd-1.x.y.tar.gz
với x và y là version của lighttpd (chi tiết về version các bạn có thể xem tại trang chủ). Sau đó bạn giải nén ra
$ tar -zxvf lighttpd-1.x.y.tar.gz
$ cd lighttpd-1.x.y
Tiến hành biên dịch qua các câu lệnh sau
./configure –prefix=/usr/local/lighttpd
make
make install
Nếu không có gì xảy ra là ta đã cài đặt xong.
- Vào thư mục đã cài lighttpd và tạo một số thư mục cần thiết:
+ Nơi chứa file cấu hình lighttpd.conf:
root@linux:/usr/local/lighttpd# mkdir etc
+ Nơi chứa các logs file.
root@linux:/usr/local/lighttpd# mkdir logs
+ Nơi chứa website:
root@linux:/usr/local/lighttpd# mkdir www
+ Nơi chứa pid file:
root@linux:/usr/local/lighttpd# mkdir -p var/run
- Tạo user và group cho lighttpd (tất nhiên ta ko dại gì mà chạy lighttpd dưới quyền root, vì như thế là quá nguy hiểm):
Code:
root@linux:/usr/local/lighttpd# groupadd lighttpd
root@linux:/usr/local/lighttpd# useradd lighttpd
-g lighttpd -s /bin/false -d /dev/null
- Chỉnh lại quyền cho thư mục logs (vì lighttpd chạy dưới quyền user lighttpd nên user này phải có quyền ghi trên thư mục logs):
Code:
root@linux:/usr/local/lighttpd# chown -R lighttpd logs/
Ở điểm này chắc Apache ngon hơn
).
- Sau đó copy file lighttpd.conf tại nơi chứa mã nguồn sang thư mục etc mà ta vừa tạo (file này nằm trong thư mục doc).
Code:
root@linux:/usr/local/lighttpd# cp /usr/local/src/
lighttpd-1.4.15/doc/lighttpd.conf /usr/local/lighttpd/etc/
- Như vậy ta đã chuẩn bị xong, giờ ta dạo một vòng qua file lighttpd.conf và chỉnh sửa một số thông tin cho phù hợp:
Xem qua file lighttpd.conf thì thấy nó hỗ trợ khá nhiều modules, nhưng mặc định lighttpd chỉ bật hai modules là mod_access và mod_accesslog.
+ Thay đổi Document Root (nơi chứa website):
server.document-root = “/usr/local/lighttpd/www/”
+ Error Log:
server.errorlog = “/usr/local/lighttpd/logs/lighttpd.error.log”
+ Access Log:
accesslog.filename = “/usr/local/lighttpd/logs/access.log”
+ Mặc định lighttpd nghe trên cổng 80, bạn có thể thay bằng cổng khác.
server.port = 80
+ Thay đổi đường dẫn của pid file:
server.pid-file = “/usr/local/lighttpd/var/run/lighttpd.pid”
+ Thay đổi user và group cho lighttpd (user và group này ta đã tạo ở trên):
server.username = “lighttpd”
server.groupname = “lighttpd”
+ Thay đổi thông tin về webserver trên HTTP Header:
server.tag = “Apache version 10″
Thay nó bằngApache version 10 (cho vui
).
- OK, giờ ta chạy thử lighttpd:
root@linux:/usr/local/lighttpd# ./sbin/lighttpd -f etc/lighttpd.conf
Sau khi khởi động thành công bạn tạo một file index.html trong thư mục www và kiểm tra thử xem webserver đã chạy đúng chưa:
http://ip_address
II. Cấu hình lighttpd 1.5 với PHP
+ Trước tiên bạn cần phải cài đặt PHP (thường từ version 5 trở lên). Kiểm tra bằng cách gõ php-cgi -v nếu hiện thông tin thì bạn đã cài
+ Tiếp đến mở file config của lighttpd ra bỏ chú thích 2 dòng mod_proxy_core và mod_proxy_backend_fastcgi
+ Tìm đến đoạn
$HTTP["url"] =~ "\.php$" {
proxy-core.balancer = "round-robin"
proxy-core.allow-x-sendfile = "enable"
proxy-core.check-local = "enable"
proxy-core.protocol = "fastcgi"
proxy-core.backends = ( "unix:/tmp/php-fastcgi.sock" )
proxy-core.max-pool-size = 16
}
Sửa thành
$PHYSICAL["existing-path"] =~ "\.php$" {
proxy-core.balancer = "round-robin"
proxy-core.allow-x-sendfile = "enable"
# proxy-core.check-local = "enable"
proxy-core.protocol = "fastcgi"
proxy-core.backends = ( "unix:/tmp/php-fastcgi.sock" )
proxy-core.max-pool-size = 16
}
Sau đó chạy command sau để thiết lập fcgi-spawn
/usr/bin/spawn-fcgi -s /tmp/php-fastcgi.sock -f /usr/bin/php-cgi
-u lighttpd -g lighttpd -C 32 -P /var/run/spawn-fcgi.pid
Sau đó khởi động lighttd bằng ./bin/ligttpd -f etc/lighttpd.conf
Filed under: Uncategorized | Leave a Comment »