Thêm VirtualHost (thêm domain) cho NGINX

0
49

Ở bài trước chúng ta đã cài thành công NGINX và PHP-FPM phiên bản mới nhất vào VPS sử dụng CentOS 7 rồi, nhưng ở đó mình chưa hướng dẫn bạn thêm domain vào VPS và tạo thư mục riêng cho domain đó, nên ở đây mình sẽ hướng dẫn:

  • Thiết lập lại các thư mục cấu hình NGINX.
  • Cách thêm một VirtualHost.

Tại sao mình lại cần thiết lập lại thư mục cấu hình NGINX? Là bởi vì để sau này bạn sẽ dễ dàng thêm các domain khác vào, chỉ cần copy vài ba lệnh thôi là được, mình sẽ hướng dẫn ở cuối bài.

Thiết lập lại thư mục cấu hình NGINX

[intense_alert box_shadow=”1px 1px 1px #006100″ shadow=”1″]Bước này bạn chỉ cần làm 1 lần duy nhất. [/intense_alert]

Trước khi tiến hành tái thiết lập thư mục cấu hình thì mình sẽ cần bạn hiểu qua vì sao chúng ta nên làm thế. Bây giờ bạn hãy mở file default.conf trong thư mục /etc/nginx/conf.d/ lên:

Đây là nội dung trong đó:

Trong đó, các đoạn mà mình bôi đậm đều sẽ sử dụng trên nhiều domain khác nhau nên chúng ta sẽ đem từng phần trong đó bỏ sang từng file riêng lẻ, sau đó sử dụng cú pháp include trong NGINX để nhúng các file này vào VirtualHost, vừa chuyên nghiệp lại gọn gàng.

Do vậy, bạn hãy xóa hết toàn bộ đoạn mà mình in đậm ở trên đi nhé và bắt đầu tạo các file dưới đây, các file này bạn đều tạo trong thư mục /etc/nginx/conf.d/ nhé.

Tiếp theo tạo file php.conf bằng câu lệnh dưới:

và bỏ nội dung này vào:

Tiếp tục tạo file block.conf để chặn các file/thư mục không cho truy cập:

Tạo thêm file tên staticfiles.conf và chèn đoạn sau vào:

Sau đó mở file default.conf bằng câu lệnh:

Và tìm đến dòng này:

Thêm đoạn này vào dưới nó:

Đồng thời xóa 2 đoạn có trong location / {.

Sau đó chèn 3 đoạn này vào trước dấu } ở cuối file.

Sửa và chèn xong thì file default.conf sẽ giống như thế này:

Kế tiếp là bạn tạo thêm một thư mục mang tên domains và chuyển file default.conf sang thư mục này.

Cuối cùng là mở file nginx.conf :

tìm dòng

Sửa lại thành

Tìm tiếp

Chèn đoạn này vào dưới nó:

Nếu muốn tiết kiệm CPU, thì hãy thêm dấu # vào trước access_log để không cho nó ghi log của các lượt truy cập vào website và VPS.

Bây giờ bạn có thể restart lại NGINX rồi.

Thêm VirtualHost vào NGINX

[intense_alert box_shadow=”1px 1px 1px #006100″ shadow=”1″]Làm lại bước này khi thêm domain khác vào [/intense_alert]

Trước khi thêm VirtualHost, chúng ta sẽ cần thống nhất đường dẫn lưu file của từng domain là như thế nào cho nó khoa học.

Mình khuyến khích các bạn nên vào thư mục /home, tạo thêm một thư mục mang tên nginx và các thư mục của từng domain sẽ được lưu trong đó. Ví dụ: /home/nginx/valazi.net.

Trong mỗi thư mục của domain, chúng ta cần có thêm 2 thư mục bao gồm:

  • log/ – Để chứa các file log cho từng domain. Trong đây sẽ có 1 file tên là error.log.
  • public_html/ – Thư mục chứa code của web bạn, cụ thể là sau này chúng ta sẽ cài WordPress vô đây.

Như vậy, ví dụ mình cần thêm domain valazi.net vào NGINX thì sẽ chạy các lệnh sau (nhớ thay lại thành tên domain bạn cần thay nhé chứ không phải cứ copy & paste đâu):

Sau đó chúng ta sẽ copy file default.conf thành valazi.net.conf đặt trong cùng thư mục

Mở file valazi.net.conf lên và tìm:

Tìm dòng :

Thay thành:

Tìm tiếp:

Thêm vào phía dưới nó:

Tìm tiếp:

Thay thành:

Sau khi thay xong nó sẽ như thế này:

Giờ thì lưu lại và restart lại NGINX:

Để test xem cả VirtualHost và PHP-FPM đã hoạt động tốt chưa, hãy tạo 1 file tên info.php lưu trong thư mục public_html của domain:

Thêm với nội dung là:

Sau đó truy cập vào http://valazi.net/info.php, nếu nó hiển thị ra trang PHP như ở dưới thì thành công.

thong-bao-thanh-cong-khi-check-info-php

Ở trang đó bạn có thể biết được các thông tin quan trọng về phiên bản PHP mà bạn đang cài.

Sau này nếu muốn thêm domain khác, chỉ cần làm lại bước thêm VirtualHost này.

Thêm VirtualHost (thêm domain) cho NGINX
Đánh giá bài viết !

Nếu yêu thích LocDang.Com thì hãy đăng ký theo dõi để nhận tin tức mới nhất và đừng quên Like và Follow mình trên Facebook Twitter nhé.
Để lại ý kiến nhận xét tại đây !!

Chưa có bình luận nào cho bài viết này. Bạn hay là người đầu tiên nhé.

    • Xin chào, khách