I want to have OpenLiteSpeed server on a server with DirectAdmin. How can I do it?
OpenLiteSpeed là gì?
Cũng giống như Apache hay Nginx, OpenLiteSpeed là một webserver mã nguồn mở, được phát triển nhờ cộng đồng dựa trên phiên bản LiteSpeed (Thương mại) của công ty LiteSpeed Tech, OpenLiteSpeed được đi kèm với giấy phép GPL v3.
Khi nào nên sử dụng OpenLiteSpeed ?
OpenLiteSpeed được phát triển và xây dựng dựa trên các tiêu chí:
- Hướng đến việc sử dụng càng ít tài nguyên (CPU, RAM)
- Xử lý một số lượng lớn kết nối mà không gây quá tải
- Giao diện quản trị với thống kê thời gian thật
- Hỗ trợ mod_rewrite của Apache (Hỗ trợ .htaccess file nhưng ko phải tất cả rule)
- Pagecache tích hợp sẵn
- Hỗ trợ các kiểu I/O tăng hiệu năng đọc ghi tùy theo phiên bản Unix đang dùng (Linux Kernel 2.4 – 2.6/FreeBSD/OS X…)
- Hỗ trợ plugin bên thứ 3 qua API
Hiện tại Directadmin version từ 1.56.5 trở lên đã hỗ trợ OpenLiteSpeed trực tiếp qua CustomBuild 2.0
Trong thời điểm mình viết bài này Directadmin mới nhất là 1.57.1, Sau đây mình hướng dẫn cài đặt trực tiếp thông qua custombuild
Đối với Centos bạn đăng nhập SSH cài các gói sau
Sau đó chạy các gói sau:
yum -y install udns-devel GeoIP-devel
Tiếp theo bạn thực hiện cài Open lite speed theo lệnh sau:
cd /usr/local/directadmin/custombuild ./build update && ./build clean ./build set webserver openlitespeed for i in 1 2 3 4; do ./build set php${i}_mode lsphp; done; ./build openlitespeed ./build php ./build rewrite_confs
Tiến trình này chạy sẽ lâu, do cần cài lại php và webserver trên Directadmin, Sau khi cài đặt thành công bạn gõ IP lên trình duyệt sẽ có thông báo “OpenLiteSpeed is functioning normally”
Lưu ý: trong quá trình chạy lệnh ./build openlitespeed nếu bạn gặp lỗi “Openlitespeed webserver configuration option is not compatible with lsphp or php-fastcgi PHP mode with mode_ruid2 enabled.” thì bạn chạy lệnh:
./build set mod_ruid2 no
Sau đó bạn chạy lại lệnh build theo hướng dẫn trên.
mod_rewrite trong openlitespeed
OpenliteSpeed hỗ trợ mod_rewrite trong .htaccess nhưng vẫn có hạn chế. Các rules mod_rewrite trong .htaccess chỉ được tải lần đầu khi litespeed khởi động.
Đối với trường hợp bạn sử dụng file manager của Directadmin để sửa file sau khi lưu hệ thống sẽ tự động restart Openlitespeed để nhận rules mới thêm vào.
Nhưng khi bạn up file htaccess, hoặc sửa file qua FTP/SSH/sFTP bạn cần reload OpenLiteSpeed để nhận rule mới thêm vào. Để khắc phục vấn đề này bạn có thể tạo cron tự động reload lại OLS bằng lệnh sau:
echo '*/3 * * * * root if ! find /home/*/domains/*/*_html/ -maxdepth 2 -type f -newer /usr/local/lsws/cgid -name ".htaccess" -exec false {} +; then /usr/local/lsws/bin/lswsctrl restart; fi' > /etc/cron.d/openlitespeed_htaccess_scan
Check lại nội dung file vừa tạo bằng lệnh sau:
cat /etc/cron.d/openlitespeed_htaccess_scan
Cron này sẽ check 3 phút 1 lần nếu file .htaccess có thay đổi, sẽ tự động reload Openlitespeed trên directadmin để nhận nội dung mới
Các bạn có thể xem hướng dẫn trực tiếp tại link sau: