67 Nguyễn Thị Định, Phường An Hải, TP. Đà Nẵng
Hướng dẫn

Cài LEMP/LAMP stack để chạy website trên Linux

Cài LEMP/LAMP stack để chạy website trên Linux
Chia sẻ

Hướng dẫn cài LEMP (Nginx) hoặc LAMP (Apache) với PHP và MySQL/MariaDB để chạy website trên VPS Linux, kèm lưu ý tối ưu và bảo mật

Mục lục1. Trước khi bắt đầu2. LEMP hay LAMP: chọn cái nào?3. Bước 1: Cài máy chủ web4. Bước 2: Cài PHP5. Bước 3: Cài cơ sở dữ liệu6. Bước 4: Cấu hình site và đưa website lên7. Bước 5: Bật HTTPS (SSL)8. Phần nâng cao: tối ưu và bảo mật cơ bản9. Xử lý lỗi thường gặp10. Câu hỏi thường gặp10.1. LEMP và LAMP khác nhau chỗ nào?10.2. Có cần cài cả Nginx và Apache không?10.3. Chạy WordPress thì dùng LEMP hay LAMP?11. Kết luận

1. Trước khi bắt đầu

  • Đã có VPS Linux (Ubuntu hoặc AlmaLinux) và đăng nhập được qua SSH với quyền sudo.
  • Đã cập nhật hệ thống (sudo apt update hoặc sudo dnf update).
  • Chọn cấu hình VPS phù hợp nhu cầu; nếu chưa chắc, xem bài Chọn cấu hình Cloud VPS phù hợp nhu cầu cùng nhóm.

2. LEMP hay LAMP: chọn cái nào?

  • Nginx (LEMP): nhẹ, xử lý tốt nhiều kết nối đồng thời, thường nhanh với nội dung tĩnh và tải cao. Cấu hình theo cú pháp riêng.
  • Apache (LAMP): linh hoạt, hỗ trợ file cấu hình .htaccess tiện cho nhiều ứng dụng phổ thông (như một số mã nguồn mở). Quen thuộc với nhiều người.

Nếu chưa có ràng buộc cụ thể, Nginx là lựa chọn phổ biến cho website hiện nay nhờ hiệu năng; Apache phù hợp khi ứng dụng của bạn yêu cầu hoặc bạn đã quen.

3. Bước 1: Cài máy chủ web

  • Nginx (Ubuntu): sudo apt install nginx.
  • Apache (Ubuntu): sudo apt install apache2.
  • Trên AlmaLinux dùng sudo dnf install nginx hoặc sudo dnf install httpd.

Sau khi cài, bật dịch vụ và cho tự khởi động: ví dụ sudo systemctl enable --now nginx. Mở trình duyệt truy cập IP máy chủ để thấy trang mặc định.

4. Bước 2: Cài PHP

  • Ubuntu (với Nginx): sudo apt install php-fpm php-mysql và các module cần thiết.
  • Ubuntu (với Apache): sudo apt install php libapache2-mod-php php-mysql.
  • AlmaLinux: cài php php-fpm php-mysqlnd qua dnf.

PHP-FPM xử lý mã PHP cho Nginx; với Apache có thể dùng module PHP trực tiếp.

Các bước cài LEMP/LAMP stack
Các bước cài LEMP/LAMP stack

5. Bước 3: Cài cơ sở dữ liệu

  • Cài MariaDB (hoặc MySQL): sudo apt install mariadb-server (Ubuntu) hoặc sudo dnf install mariadb-server (AlmaLinux).
  • Chạy sudo mysql_secure_installation để đặt mật khẩu root cơ sở dữ liệu và siết các thiết lập mặc định không an toàn.
  • Tạo database và user riêng cho website, cấp quyền vừa đủ cho user đó.

6. Bước 4: Cấu hình site và đưa website lên

  1. Đặt mã nguồn website vào thư mục phục vụ (ví dụ trong /var/www/tenwebsite).
  2. Tạo file cấu hình site cho Nginx/Apache trỏ tới thư mục đó và tên miền.
  3. Kiểm tra cấu hình (ví dụ sudo nginx -t) rồi tải lại dịch vụ.
  4. Trỏ tên miền về IP máy chủ và truy cập thử.

7. Bước 5: Bật HTTPS (SSL)

Website nên chạy HTTPS để mã hóa kết nối. Bạn có thể dùng công cụ cấp chứng chỉ tự động để tạo và gia hạn chứng chỉ, rồi cấu hình máy chủ web dùng chứng chỉ đó. Về vai trò của SSL/TLS và cách cấu hình đúng (phiên bản TLS, HSTS, chuyển hướng), xem bài SSL/TLS và HTTPS: vai trò và cách cấu hình đúng bên chuyên mục An ninh.

8. Phần nâng cao: tối ưu và bảo mật cơ bản

  • Tối ưu hiệu năng: bật nén (gzip), cấu hình cache, tinh chỉnh PHP-FPM (số worker) theo tài nguyên máy chủ.
  • Bảo mật cơ bản: ẩn thông tin phiên bản máy chủ web/PHP, giới hạn quyền thư mục web, cập nhật thường xuyên, và cân nhắc thêm tường lửa ứng dụng web (WAF) cho site quan trọng.
  • Sao lưu: sao lưu định kỳ mã nguồn và cơ sở dữ liệu, và thử phục hồi để chắc chắn bản sao dùng được.

9. Xử lý lỗi thường gặp

  • Trang trắng hoặc lỗi 502: thường do PHP-FPM chưa chạy hoặc cấu hình sai socket; kiểm tra dịch vụ PHP và log lỗi.
  • Không kết nối được cơ sở dữ liệu: kiểm tra user/mật khẩu database và quyền truy cập.
  • Lỗi 403/404: kiểm tra quyền thư mục và đường dẫn root trong cấu hình site.

10. Câu hỏi thường gặp

10.1. LEMP và LAMP khác nhau chỗ nào?

Khác biệt chính là máy chủ web: LEMP dùng Nginx, LAMP dùng Apache. Phần còn lại (Linux, PHP, MySQL/MariaDB) tương tự. Nginx thường nhẹ và tốt với tải cao; Apache linh hoạt và quen thuộc với nhiều ứng dụng phổ thông.

10.2. Có cần cài cả Nginx và Apache không?

Thường không. Chọn một máy chủ web phù hợp là đủ. Trong một số kiến trúc nâng cao, người ta đặt Nginx trước Apache làm reverse proxy, nhưng đó là trường hợp đặc thù, không cần thiết cho website thông thường.

10.3. Chạy WordPress thì dùng LEMP hay LAMP?

Cả hai đều chạy WordPress tốt. Nginx (LEMP) thường được chọn vì hiệu năng với lưu lượng cao; Apache (LAMP) tiện nhờ hỗ trợ .htaccess. Chọn theo nhu cầu hiệu năng và mức độ quen thuộc của bạn.

11. Kết luận

Cài LEMP hoặc LAMP để chạy website trên Linux gồm các bước rõ ràng: cài máy chủ web, PHP, cơ sở dữ liệu, cấu hình site và bật HTTPS. Chọn Nginx hay Apache tùy nhu cầu hiệu năng và thói quen. Sau khi chạy được, đừng quên tối ưu, bảo mật cơ bản và sao lưu định kỳ để website vận hành ổn định và an toàn.

Cần hỗ trợ kỹ thuật? Nếu cần hỗ trợ cài LEMP/LAMP hoặc đưa website lên VPS, liên hệ đội ngũ kỹ thuật Cloudzone qua hotline/Zalo 0906.489.647 hoặc email support@cloudzone.vn.

Chia sẻ

Bài viết liên quan

Tối ưu chi phí hạ tầng: chọn đúng cấu hình, thuê theo nhu cầu

Tối ưu chi phí hạ tầng: chọn đúng cấu hình, thuê theo nhu cầu

Cách giảm chi phí hạ tầng hợp lý: chọn đúng cấu hình (right-sizing), thuê theo nhu cầu, kết hợp dịch vụ và rà soát tài nguyên định kỳ mà không ảnh hưởng vận hành

Cách săn khuyến mãi VPS/máy chủ, tránh bẫy giá rẻ

Cách săn khuyến mãi VPS/máy chủ, tránh bẫy giá rẻ

Cách tận dụng khuyến mãi VPS và máy chủ hợp lý, đọc kỹ điều kiện gia hạn và nhận biết bẫy giá rẻ ảnh hưởng chất lượng dịch vụ

Chọn nhà cung cấp VPS/máy chủ: tiêu chí cần kiểm tra

Chọn nhà cung cấp VPS/máy chủ: tiêu chí cần kiểm tra

Các tiêu chí chọn nhà cung cấp VPS và máy chủ: uptime/SLA, hạ tầng data center, peering, hỗ trợ kỹ thuật và chính sách hoàn tiền, kèm cách đọc cam kết dịch vụ

Phần mềm mã nguồn mở thay thế để tiết kiệm bản quyền

Phần mềm mã nguồn mở thay thế để tiết kiệm bản quyền

Gợi ý các phần mềm mã nguồn mở thay thế giải pháp có phí cho máy chủ: hệ điều hành, cơ sở dữ liệu, web server, control panel và ảo hóa, kèm lưu ý chi phí vận hành

So sánh bản quyền control panel: cPanel, DirectAdmin, Plesk

So sánh bản quyền control panel: cPanel, DirectAdmin, Plesk

So sánh cPanel, DirectAdmin và Plesk về tính năng, hệ điều hành hỗ trợ và chi phí bản quyền, kèm gợi ý chọn control panel theo số website và nhu cầu

Các loại bản quyền Windows Server và cách chọn cho đúng

Các loại bản quyền Windows Server và cách chọn cho đúng

Hiểu cấp phép Windows Server theo core, CAL và các kênh OEM/Volume/CSP, phân biệt Standard và Datacenter để chọn bản quyền phù hợp và hợp lệ