[Nginx] Hướng dẫn cài đặt Nginx trên CentOS 5/6/7

Với bài viết này, chúng ta sẽ tìm hiểu về cách cài đặt Nginx trên CentOS 5/6/7. Vậy Nginx là gì? Nginx (Engine X) là một máy chủ web server mã nguồn mở rất được ưa chuộng sử dụng trên các hệ thống máy chủ Web HTTP/HTTPS trên thế giới. Có thể coi là đối trọng chính với mã nguồn mở Web Server khác là Apache.

Nginx có thể đảm nhận các chức năng tiêu biểu nổi bật khác như : HTTP Cache, HTTP Reverse Proxy, Load Balancing,… Với khả năng phục vụ được số lượng kết nối đồng thời lớn, hiệu suất hoạt động nổi trội cùng lượng tài nguyên tiêu thụ thấp, sự ổn định vận hành cao,.. nên Nginx chiếm được sự ưu ái của các quản trị viên hệ thống.

Có 2 cách để cài đặt Nginx trên CentOS 5/6/7 :
+ Thực hiện biên dịch (compile) source mã nguồn Nginx. (Hướng dẫn cài đặt biên dịch source Nginx sẽ được cập nhật sau)
+ Thực hiện cài đặt thông qua Repo EPEL của CentOS hoặc Repo của Nginx.

Ở bài viết này chúng ta sẽ tìm hiểu về cách cài đặt Nginx qua repo chính gốc Nginx. Nếu bạn xài repo EPEL mặc định trên CentOS 6 hoặc 7, bạn sẽ rơi vào tình trạng đôi khi phiên bản package Nginx chứa trên repo đó không phải phiên bản mới nhất. Nên để chắc chắn nhất phiên bản stable Nginx luôn là phiên bản mới nhất thì ta sẽ sử dụng repo của chính Nginx nhằm cập nhật nguồn download chính thống.

Tham khảo thêm :
Hướng dẫn cài đặt Nginx trên Ubuntu Server 12.04, 14.04 và 16.04

Hướng dẫn cài đặt Nginx trên CentOS 5/6/7

1. Khởi tạo Nginx Repo

– Để cài đặt Nginx trên CentOS ta cần tạo repo Nginx tương ứng phiên bản, với mẫu như sau (lưu ý thay các giá trị biến tương ứng như sau):

Giá trị biến

OS : rhel / centos
OSRELEASE : 5 (5.x), 6 (6.x), 7 (7.x)

Mẫu repo Nginx

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/
gpgcheck=0

 
– Repo Nginx cho CentOS 5

# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/5/$basearch/
gpgcheck=1

 
– Repo Nginx cho CentOS 6

# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=1

 
– Repo Nginx cho CentOS 7

# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=1

2. Thực hiện import chữ kí số Nginx

Hệ thống quản lý chương trình RPM sử dụng thông tin chữ kí số để xác thực tính toàn vẹn và gốc gác của chương trình được download. Chính vì vậy chúng ta cần download thông tin chữ kí đã được kí vào các package nginx repo và import vào hệ thống quản lý chương trình RPM trên CentOS.

– Download và import signing key Nginx.

# wget --no-check-certificate -O nginx_signing.key https://nginx.org/keys/nginx_signing.key
# rpm --import nginx_signing.key

3. Thực hiện cài đặt Nginx

– Cập nhật thông tin repo mới.

# yum update

 
– Thực hiện cài đặt Nginx thông qua repo Nginx.

# yum --disablerepo=* --enablerepo=nginx install nginx -y

4. Khởi động Nginx web server và set startup service Nginx

– Sau khi cài đặt Nginx trên CentOS thì ta cần khởi động Nginx và set startup service với Nginx.

+ CentOS 5/6

# /etc/init.d/nginx start

 
+ CentOS 7

# systemctl start nginx.service

 
– Nginx sẽ không tự động khởi động trong trường hợp bạn khởi động lại máy chủ server, máy chủ ảo VPS. Do đó bạn cần thiết lập như sau để Nginx có thể tự động khởi động khi start hệ thống Linux.

+ CentOS 5/6

# chkconfig --add nginx
# chkconfig --levels 235 nginx on

 
+ CentOS 7

# systemctl enable nginx.service

5. Kiểm tra web server Nginx

Bây giờ ta cần kiểm tra xem sau khi đã khởi động web server Nginx lên thì Nginx có hoạt động bình thường ở dạng mặc định hay chưa, coi như kiểm tra việc cài đặt Nginx đã hoàn tất.

– Kiểm tra tiến trình Nginx có đang chạy không ?

# ps -auxfw | grep -v "grep" | grep "nginx"
root 1679 0.0 0.1 45744 1036 ? Ss 00:05 0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx 1680 0.0 0.1 45748 1752 ? S 00:05 0:00 \_ nginx: worker process

 
– Kiểm tra xem có tiến trình nào lắng nghe ở port 80 HTTP mặc định hay chưa ?

# netstat -atnlp | grep ":80"
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1679/nginx

 
– Kiểm tra firewall có mở port 80 hay chưa ? Các bạn tự kiểm tra nhé, do firewall có thể mở hoặc không ? cũng có thể xài dịch vụ firewall khác quản lý.
– Truy cập ip của máy chủ Nginx port 80 trên trình duyệt web. Nếu hiện ra nội dung thông báo như hình dưới thì tức Web Server Nginx đã hoạt động thành công.

Kết luận:

Với những thao tác như trên bạn đã có thể thành công trong việc cài đặt Nginx trên CentOS 5/6/7. Bạn có thể tham khảo thêm document của Nginx : http://nginx.org/en/docs/

Previous article[Blog] Chín thói quen xấu cần bỏ nếu muốn theo ngành CNTT
Next article[Blog] Học ngành mạng máy tính tương lai sẽ như thế nào ?
Bạn đang theo dõi website "https://cuongquach.com/" nơi lưu trữ những kiến thức tổng hợp và chia sẻ cá nhân về Quản Trị Hệ Thống Dịch Vụ & Mạng, được xây dựng lại dưới nền tảng kinh nghiệm của bản thân mình, Quách Chí Cường. Hy vọng bạn sẽ thích nơi này !