Một trong những giải pháp hiệu quả để tối ưu hiệu suất và tăng tốc độ truy cập website là thực hiện cấu hình reverse-proxy Nginx-Apache trên DirectAdmin. Bài viết này sẽ giới thiệu 2 cách triển khai cấu hình này, giúp bạn tận dụng tối đa sức mạnh của cả hai loại web server.
Lợi ích khi thực hiện reverse-proxy NGINX-Apache trên DirectAdmin
Reverse-proxy là một kỹ thuật mạng trong đó một máy chủ (proxy) sẽ nhận các yêu cầu từ internet và chuyển tiếp chúng đến một hoặc nhiều máy chủ khác (backend servers). Trong trường hợp reverse-proxy Nginx-Apache, Nginx sẽ đóng vai trò là proxy, nhận các yêu cầu từ người dùng và sau đó chuyển tiếp chúng đến máy chủ Apache để xử lý.
Việc kết hợp Nginx và Apache thông qua reverse-proxy trên DirectAdmin mang lại nhiều lợi ích, đặc biệt khi bạn đang quản lý các website đa dạng, bao gồm cả website tĩnh và động. Cụ thể:
- Xử lý file tĩnh tốt hơn: Nginx nổi tiếng với khả năng xử lý các file tĩnh (hình ảnh, CSS, JavaScript) nhanh chóng giúp tăng tốc độ tải trang, đặc biệt là ở những website có nhiều nội dung tĩnh.
- Cân bằng tải: Nếu bạn có nhiều website hoặc ứng dụng, Nginx có thể phân phối tải đều lên các máy chủ Apache, giúp tăng khả năng chịu tải của hệ thống.
- Hỗ trợ .htaccess: Mặc dù Nginx không hỗ trợ trực tiếp file .htaccess, nhưng khi kết hợp với Apache thông qua reverse-proxy, bạn vẫn có thể sử dụng các chỉ thị trong file .htaccess để cấu hình website.
Mọi người cũng xem:
Hướng dẫn reverse-proxy NGINX-Apache trên DirectAdmin
Cách 1: Thực hiện qua dòng lệnh
Bước 1: SSH vào hệ thống
Để thiết lập reverse proxy Nginx-Apache trên DirectAdmin, bạn cần kết nối đến VPS hoặc server của mình thông qua giao thức SSH với quyền truy cập root hoặc một tài khoản có quyền sudo. Nếu bạn chưa biết cách thực hiện, hãy tham khảo hướng dẫn chi tiết trong bài viết sau:
Bước 2: Kiểm tra yêu cầu hệ thống
Quá trình reverse-proxy NGINX-Apache trên DirectAdmin yêu cầu VPS, server của bạn tích hợp CustomBuild từ 2.0 trở lên. Bạn có thể tham khảo hướng dẫn chi tiết cách kiểm tra phiên bản CustomBuild hiện tại trong bài viết:
Trong trường hợp phiên bản CustomBuild của bạn thấp hơn 2.0, hãy thực hiện nâng cấp lên phiên bản 2.0 để tiếp tục thực hiện.
Bước 3: Tiến hành reverse-proxy NGINX-Apache trên DirectAdmin
Thực hiện lần lượt các lệnh sau trong terminal để tiến hành reverse-proxy NGINX-Apache:
cd /usr/local/directadmin/custombuild
./build set webserver nginx_apache
./build update
./build set php1_mode php-fpm
./build set php2_mode php-fpm
./build set php3_mode php-fpm
./build set php4_mode php-fpm
./build nginx_apache
./build php n
./build rewrite_confs
Trong đó các lệnh lần lượt có chức năng sau:
- Lệnh 1: Di chuyển vào thư mục cấu hình của CustomBuild.
- Lệnh 2: Thiết lập webserver mặc định cho DirectAdmin thành nginx_apache.
- Lệnh 3: Cập nhật các script và thành phần của CustomBuild đến phiên bản mới nhất.
- Lệnh 4: Đặt chế độ PHP1 về PHP-FPM.
- Lệnh 5: Đặt chế độ PHP2 về PHP-FPM.
- Lệnh 6: Đặt chế độ PHP3 về PHP-FPM.
- Lệnh 7: Đặt chế độ PHP4 về PHP-FPM.
- Lệnh 8: Cài đặt reverse proxy Nginx_Apache.
- Lệnh 9: Cài đặt lại tất cả các phiên bản PHP để đảm bảo tương thích với cấu hình mới.
- Lệnh 10: Viết lại cấu hình tùy chỉnh hoặc bỏ qua lệnh này nếu muốn sử dụng cấu hình mặc định.
Với lệnh rebuild tất cả phiên bản PHP đang có, nếu bạn mở càng nhiều, thời gian rebuild càng lớn. Ví dụ, bạn dùng 4 phiên bản PHP thì thời gian rebuild sẽ tối thiều là 30 phút trở lên.
Cách 2: Thực hiện qua giao diện DirectAdmin
Bước 1: Đăng nhập vào trang quản trị DirectAdmin
Đầu tiên, bạn truy cập vào địa chỉ: https://ip-server:2222
và thay thế ip-server
bằng địa chỉ IP thực tế của server bạn, đồng thời giữ nguyên port 2222. Sau khi nhập thông tin tài khoản do Vietnix cung cấp, bạn sẽ truy cập được vào giao diện quản trị của DirectAdmin.
Bước 2: Tiến hành reverse-proxy NGINX-Apache trên DirectAdmin
Trong giao diện quản trị, bạn chọn mức Access Level là Admin. Sau đó tìm đến thư mục Extra Features và truy cập vào CustomBuild.
Trong giao diện quản trị CustomBuild, bạn bấm chọn Settings > Options.
Bạn tìm đến phần PHP Settings và đổi giá trị php_mode của tất cả các phiên bản PHP đang sử dụng thành php-fpm. Bạn bấm Save để lưu thay đổi.
Tiếp theo, bạn tìm đến phần WEB Server Settings và đổi giá trị của dòng webserver thành nginx_apache và giá trị của dòng unit thành yes. Bạn đừng quên chọn Save để áp dụng các thay đổi.
Sau khi thiết lập xong, bạn quay về giao diện quản trị CustomBuild và chọn mục Build trong phần Software.
Trong giao diện mới xuất hiện, bạn kéo xuống tìm dòng nginx+Apache và bấm vào nút Build để tiến hành cài đặt reverse-proxy NGINX-Apache. Quá trình này có thể mất từ 3-5 phút tùy vào cấu hình hệ thống.
Sau khi việc cài đặt hoàn tất, bạn quay lại giao diện quản trị CustomBuild và chọn mục Actions trong phần Others.
Bạn thực thi lần lượt 2 lệnh như sau để áp dụng theo cấu hình mới:
- Lệnh 1:
da build php_ini
(lệnh này tương đương lệnh./build php
trong Terminal). - Lệnh 2:
da build rewrite_confs
(lệnh này tương đương lệnh./build rewrite_confs
).
Hãy chờ 4-6 phút để quá trình cấu hình hoàn tất.
Bạn mở Terminal và nhập 2 lệnh sau để kiểm tra phiên bản của Apache và Nginx:
httpd -v
nginx -v
Cuối cùng, bạn chạy 2 lệnh sau để xem các tiến trình đang hoạt động trên 2 service này:
netstat -tulpn | grep nginx
netstat -tulpn | grep httpd
Bạn sẽ thấy Nginx đảm nhiệm vai trò chính trong việc xử lý yêu cầu trên các port 80,443(SSL)
Hypertext Transfer Protocol (HTTP), trong khi Apache(httpd)
sẽ hỗ trợ cho các tác vụ khác.
Lời kết
Như vậy, bài viết đã giới thiệu tới bạn 2 cách reverse-proxy NGINX-Apache trên DirectAdmin. Việc lựa chọn phương pháp nào sẽ phụ thuộc vào cấu hình hệ thống và nhu cầu sử dụng của bạn. Hãy cân nhắc kỹ lưỡng để đưa ra quyết định phù hợp nhất.