Nginx server block trên centos 8 cho phép bạn chạy nhiều trang web trên một máy chủ duy nhất.
Đối với mỗi trang web, bạn có thể đặt tài liệu gốc của trang web, tạo chính sách bảo mật riêng biệt, sử dụng các chứng chỉ SSL khác nhau và hơn thế nữa.
Bài viết này mình sẽ hướng dẫn cách thiết lập Nginx Server Block trên CentOS 8.
Tạo cấu trúc thư mục
Tài liệu gốc là thư mục trong đó các tệp trang web cho một tên domain được lưu trữ và phục vụ theo yêu cầu. Mình sẽ đặt tài liệu gốc ở các thử mục như sau : Đối với mỗi domain sẽ được lưu trữ trên máy chủ, mình sẽ tạo một thư mục riêng bên trong /var/www. Trong thư mục đó mình sẽ tạo một file html để hiện thị web cho domain. Bắt đầu mình sẽ tạo thư mục gốc cho domain tên là example.com:# sudo mkdir -p /var/www/example.com/public_html
tiếp theo mình sẽ tạo một file index.html để hiện thị web :
# sudo vi /var/www/example.com/public_html/index.html
sau đó thêm nội dung sau vào file index.html :
<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>Welcome to example.com</title> </head> <body> <h1>Success! example.com home page!</h1> </body> </html>tiếp theo mình sẽ chỉnh sửa quyền truy cập và file /var/www/example.com :
# sudo chown -R nginx: /var/www/example.com
Tạo Server Blocks
Mặc định file cấu hình sẽ có đuôi là .conf và được lưu trong thư mục /etc/nginx/conf.d. Bắt đầu mình sẽ tạo một file cấu hình cho domain :# sudo vi /etc/nginx/conf.d/example.com.conf
File cấu hình mình sẽ để cùng tên với tên miền.
mình sẽ thêm nội dung sau vào file cấu hình :
server { listen 80; listen [::]:80; root /var/www/example.com/public_html; index index.html; server_name example.com www.example.com; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location / { try_files $uri $uri/ =404; } }lưu và đóng file lại và kiểm tra xem có bị lỗi cú pháp không như sau :
# sudo nginx -t
như mình thì sẽ là không có lỗi.
Tiếp theo mình khở động lại dịch vụ của Nginx để các thay đổi ở trên có hiệu lực :
# sudo systemctl restart nginx
Tiếp theo hãy truy cập vào http://examle.com xem thử có hoạt động không.
Nếu bạn đang làm thử và chưa có domain thì hãy truy cập vào file hosts trong máy của mình và sửa để trỏ domain vào IP của mình.
Kết luận
Mình đã hướng dẫn các bạn cách tạo Nginx Server Block trên CentOS 8. Bạn có thể lặp lại các bước nêu trên và tạo các Server Block bổ sung cho tất cả các domain của mình. Nếu bạn có những câu hỏi nào hoặc vẫn đề nào đừng quên để lại câu hỏi bên dưới mình sẽ giải quyết tất cả cho bạn.Nguồn : Linuxize.com