Cách cài đặt Nginx trên Ubuntu 16.04

0

Giới thiệu
Nginx là một trong những máy chủ web phổ biến nhất trên thế giới và chịu trách nhiệm lưu trữ một số trang web có lưu lượng truy cập lớn nhất và lớn nhất trên internet. Nó thân thiện với tài nguyên hơn Apache trong hầu hết các trường hợp và có thể được sử dụng làm máy chủ web hoặc proxy ngược.

1: Cài đặt Nginx

Nginx có sẵn trong kho lưu trữ mặc định của Ubuntu, vì vậy việc cài đặt khá đơn giản.

sudo apt-get update
sudo apt-get install nginx

Sau khi các quy trình được cài đặc, apt-get sẽ cài đặt Nginx và mọi phụ thuộc vào sự cần thiết cho máy chủ của bạn.

2: Điều chỉnh Tường lửa

Trước khi có thể kiểm tra Nginx, chúng tôi cần cấu hình lại phần mềm tường lửa, để cho phép truy cập vào dịch vụ. Nginx đăng ký chính nó như một dịch vụ với ufw, tường lửa khi cài đặt, để cho phép Nginx truy cập.

 sudo ufw app list

Bạn sẽ nhận được một danh sách các hồ sơ ứng dụng:

  • Output:
Available applications:
  Nginx Full
  Nginx HTTP
  Nginx HTTPS
  OpenSSH

Như bạn có thể thấy, có ba hồ sơ có sẵn cho Nginx:

  • Nginx Full : Cấu hình này mở cả cổng 80 (lưu lượng truy cập web bình thường, không được mã hóa) và cổng 443 (lưu lượng được mã hóa TLS / SSL)
  • Nginx HTTP : Cấu hình này chỉ mở cổng 80 (lưu lượng truy cập web bình thường, không được mã hóa)
  • Nginx HTTPS : Cấu hình này chỉ mở cổng 443 (lưu lượng được mã hóa TLS / SSL)

Bạn nên kích hoạt cấu hình hạn chế nhất vẫn sẽ cho phép lưu lượng truy cập bạn đã định cấu hình, tôi sẽ chỉ cần cho phép lưu lượng truy cập trên cổng 80.

Bạn có thể kích hoạt điều này bằng cách gõ:

sudo ufw allow 'Nginx HTTP'

Bạn có thể xác minh thay đổi bằng cách nhập:

sudo ufw status

Bạn sẽ thấy lưu lượng HTTP được phép trong đầu ra được hiển thị:

  • Output:
Status: active
To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere                  
Nginx HTTP                 ALLOW       Anywhere                  
OpenSSH (v6)               ALLOW       Anywhere (v6)             
Nginx HTTP (v6)            ALLOW       Anywhere (v6)

3: Kiểm tra máy chủ web của bạn

Khi kết thúc quá trình cài đặt, Ubuntu 16.04 khởi động Nginx. Các máy chủ web nên đã được chạy và chạy.

Bây biời có thể kiểm tra với systemd hệ thống init để đảm bảo dịch vụ đang chạy bằng cách gõ:

 systemctl status nginx
  • Output:
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2016-04-18 16:14:00 EDT; 4min 2s ago
 Main PID: 12857 (nginx)
   CGroup: /system.slice/nginx.service
           ├─12857 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
           └─12858 nginx: worker process

Như bạn có thể thấy ở trên, dịch vụ dường như đã bắt đầu thành công. Tuy nhiên, cách tốt nhất để kiểm tra điều này là thực sự yêu cầu một trang từ Nginx.

Bạn có thể truy cập trang đích Nginx mặc định để xác nhận rằng phần mềm đang chạy đúng. Bạn có thể truy cập thông qua tên miền hoặc địa chỉ IP của máy chủ.

Nếu bạn chưa thiết lập tên miền cho máy chủ của mình, bạn có thể tìm hiểu cách thiết lập tên miền với

  • Namecheap
  • Vultr
  • A2Hosting

Nếu bạn không muốn thiết lập một tên miền cho máy chủ của mình, bạn có thể sử dụng địa chỉ IP công cộng của máy chủ của mình. Nếu bạn không biết địa chỉ IP của máy chủ của mình, bạn có thể lấy nó theo một số cách khác nhau từ dòng lệnh.

Hãy thử gõ này tại dấu nhắc lệnh của máy chủ của bạn:

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

Bạn sẽ nhận lại một vài dòng. Bạn có thể thử từng cái trong trình duyệt web của mình để xem chúng có hoạt động không. Một cách khác là gõ cái này, cái này sẽ cung cấp cho bạn địa chỉ IP công cộng của bạn như được thấy từ một vị trí khác trên internet:

 sudo apt-get install curl
 curl -4 icanhazip.com

Khi bạn có địa chỉ IP hoặc tên miền của máy chủ, hãy nhập nó vào thanh địa chỉ của trình duyệt:

http://server_domain_or_IP

Bạn sẽ thấy trang đích Nginx mặc định, trông giống như thế này:

Trang này được bao gồm đơn giản với Nginx để cho bạn thấy rằng máy chủ đang chạy chính xác.

4: Quản lý quy trình Nginx

Bây giờ bạn đã có máy chủ web của mình và chạy, chúng ta có thể thực hiện một số lệnh quản lý cơ bản.

Để dừng máy chủ web của bạn, bạn có thể nhập:

 sudo systemctl stop nginx

Để khởi động máy chủ web khi dừng, gõ:

 sudo systemctl start nginx

Để dừng và sau đó bắt đầu lại dịch vụ, gõ:

 sudo systemctl restart nginx

Nếu bạn chỉ đơn giản là thực hiện thay đổi cấu hình, Nginx thường có thể tải lại mà không làm mất kết nối. Để làm điều này, lệnh này có thể được sử dụng:

 sudo systemctl reload nginx

Theo mặc định, Nginx được cấu hình để tự động khởi động khi máy chủ khởi động. Nếu đây không phải là điều bạn muốn, bạn có thể tắt hành vi này bằng cách nhập:

 sudo systemctl disable nginx

Để kích hoạt lại dịch vụ để khởi động khi khởi động, bạn có thể gõ:

 sudo systemctl enable nginx

5: Làm quen với các tệp và thư mục quan trọng của Nginx

Bây giờ bạn đã biết cách tự quản lý dịch vụ, bạn nên dành vài phút để làm quen với một vài thư mục và tệp quan trọng.

Nội dung

  • /var/www/html: Nội dung web thực tế, theo mặc định chỉ bao gồm trang Nginx mặc định mà bạn đã thấy trước đó, được cung cấp ngoài /var/www/html thư mục. Điều này có thể được thay đổi bằng cách thay đổi tập tin cấu hình Nginx.

Cấu hình máy chủ

  • /etc/nginx: Thư mục cấu hình Nginx. Tất cả các tệp cấu hình Nginx nằm ở đây.
  • /etc/nginx/nginx.conf: Tệp cấu hình chính của Nginx. Điều này có thể được sửa đổi để thay đổi cấu hình toàn cầu Nginx.
  • /etc/nginx/sites-available/: Thư mục nơi “khối máy chủ” trên mỗi trang web có thể được lưu trữ. Nginx sẽ không sử dụng các tệp cấu hình được tìm thấy trong thư mục này trừ khi chúng được liên kết với sites-enabled thư mục (xem bên dưới). Thông thường, tất cả cấu hình khối máy chủ được thực hiện trong thư mục này, và sau đó được kích hoạt bằng cách liên kết với thư mục khác.
  • /etc/nginx/sites-enabled/: Thư mục nơi kích hoạt “khối máy chủ” trên mỗi trang web được lưu trữ. Thông thường, chúng được tạo bằng cách liên kết đến các tệp cấu hình được tìm thấy trong sites-availablethư mục.
  • /etc/nginx/snippets: Thư mục này chứa các đoạn cấu hình có thể được bao gồm ở nơi khác trong cấu hình Nginx. Các phân đoạn cấu hình có khả năng lặp lại là những ứng cử viên tốt để tái cấu trúc thành các đoạn.

Nhật ký máy chủ

  • /var/log/nginx/access.log: Mọi yêu cầu đến máy chủ web của bạn được ghi lại trong tệp nhật ký này trừ khi Nginx được định cấu hình để làm khác.
  • /var/log/nginx/error.log: Bất kỳ lỗi Nginx nào sẽ được ghi lại trong nhật ký này.

Phần kết .

Bây giờ bạn đã cài đặt máy chủ web, bạn có nhiều tùy chọn cho loại nội dung sẽ phục vụ và các công nghệ bạn muốn sử dụng để tạo trải nghiệm phong phú hơn.

Leave A Reply

Your email address will not be published.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More