Trang chủ » Cách cài đặt WordPress trên Ubuntu chạy Nginx server

Cách cài đặt WordPress trên Ubuntu chạy Nginx server

by admin

Hướng dẫn chi tiết cách cài đặt WordPress trên Ubuntu chạy Nginx – một web server mã nguồn mở vô cùng mạnh mẽ và nổi tiếng phục vụ web HTTP.

Cách cài đặt WordPress trên Ubuntu chạy Nginx server

Vì sao sử dụng WordPress Nginx?

Nginx đang tăng độ phổ biến lên từng ngày trong thời gian vừa qua và được xem như sự thay thế hoàn hảo cho Apache web server. Nginx hỗ trợ reverse proxy, caching, media streaming, load balancing và nhiều tính năng khác. Nó rất phù hợp cho những website WordPress chạy trên VPS.

XEM BẢNG GIÁ CLOUD VPS

Một số tính năng có sẵn của Nginx là:

  • Nginx được tạo để sử dụng ram thấp
  • Nó có thể hỗ trợ xử lý đồng thời nhiều request
  • Hỗ trợ Ipv6
  • Hỗ trợ reverse proxy với caching hiệu quả
  • Cung cấp load balancer dựng sẵn
  • Hỗ trợ WebSockets
  • Tối ưu xử lý file index, file tĩnh và tự động index
  • Kết hợp với FastCGI để caching tốt hơn

Nginx làm được nhiều việc hơn một web server thông thường, đó là lý do vì sao nó phổ biến đến vậy. Nginx vượt trội hơn các web server cũ và giữ vững điểm benchmark cao hơn về hiệu năng.

Nginx giải quyết được bài toán mở rộng và là giải pháp của vấn đề C10k liên quan đến xử lý yêu cầu cùng lúc. Và nếu như bạn chưa biết, WordPress và Nginx như một cặp bài trùng vậy đó, nó hoạt động mượt mà bên nhau!

Giống với LAMP, sử dụng Nginx sẽ được gọi là LEMP có nghĩa là cài Linux, Nginx, MySQL/MariaDB, và PHP.

Xem thêm:

Cài đặt WordPress trên Ubuntu bằng LAMP Stack

Cài đặt WordPress trên Ubuntu chạy Nginx thế nào?

*** Chuẩn bị

  • Đăng nhập vào server với quyền sudo
  • Nginx cài sẵn
  • Đã có chứng chỉ SSL cài lên tên miền của bạn
  • Bạn đã sở hữu một tên miền trỏ tới địa chỉ IP của server.

*** Hãy xem qua toàn bộ quá trình cài đặt WordPress trên Ubuntu chạy Nginx:

1. Cập nhật máy tính

Cập nhật danh sách package bằng lệnh:

sudo apt update

Cập nhật tới phiên bản mới nhất bằng lệnh:

sudo apt upgrade

2. Cài đặt Nginx

Nginx packages có sẵn trong bộ repository của Ubuntu. Bạn có thể dùng lệnh sau để cài nó:

sudo apt install nginx

Sau khi hoàn tất cài đặt (mật một lúc), Ngix service sẽ tự khởi chạy. Để kiểm tra lại tình trạng chạy của Nginx, bạn gõ lệnh sau:

sudo systemctl status nginx

3. (Tùy chọn) Cấu hình UFW

Nếu bạn đang dùng UFW (Uncomplicated Firewall) để quản lý VPS firewall vậy bạn cần mở port 80 và 443 để cho HTTP và HTTPS chạy. Bạn có thể kích hoạt profile NGinx riêng đã chứa cả 2 port này bằng lệnh sau:

sudo ufw allow 'Nginx Full'

Để xác nhận tình trang, sử dụng lệnh:

sudo ufw status

4. Cài đặt và cấu hình MySQL Database

Để lưu data, chúng ta sẽ dùng MySQL. Trong trường hợp bạn chưa cài MySQL, bạn có thể cài bằng cách dùng lệnh:

sudo apt install mysql-server

Cài đặt xong, MySQL database sẽ tự khởi chạy. Bạn dùng lệnh sau để kiểm tra lại:

sudo systemctl status mysql

Tiếp theo, đăng nhập vào MySQL shell bằng lệnh:

mysql -u root -p

Nó sẽ chuyển sang MySQL console. Tại đây bạn tạo database và database user với tên là WordPress và WordPressUser lần lượt bằng lệnh:

mysql> CREATE DATABASE WordPress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
mysql> GRANT ALL ON WordPress.* TO WordPressUser @'localhost' IDENTIFIED BY 'your password';
mysql> FLUSH PRIVILEGES;
mysql> EXIT;

Nó sẽ tạo cơ bản database cho bạn để dùng cho việc cài WordPress.

5. Cài đặt PHP

Bạn cài PHP extensions trực tiếp bằng một lệnh sau:

sudo apt install php7.2-cli php7.2-fpm php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl

Sau khi hoàn tất, PHP-FPM sẽ tự khởi chạy Fast CGI process manager sẽ kích hoạt caching.

6. Cài đặt WordPress với Nginx

Để cài đặt WordPress với Nginx, đầu tiên tạo thư mục để tải WordPress về:

sudo mkdir -p /var/www/html/sample.com

Từ website chính thức của WordPress, bạn có thể tải bản mới nhất về thư mục /tmp. Di chuyển tới thư mục này bằng lệnh cd và tải về bằng lệnh wget:

cd /tmp
wget https://wordpress.org/latest.tar.gz

Tiếp theo, bạn có thể giải nén file cài này tới thư mục được tạo trước đây bằng lệnh:

tar xf latest.tar.gz
sudo mv /tmp/wordpress/* /var/www/html/sample.com/

Web server sẽ đòi quyền truy cập file. Thay đổi permission của nó bằng lệnh:

sudo chown -R www-data: /var/www/html/sample.com

Lưu ý là Nginx và PHP chạy www-data user và group, vì vậy ta dùng lệnh trên

7. Cấu hình WordPress Nginx

Để cấ hình Nginx cho WordPress, chúng ta cần tạo server block cho WordPress. Chuyển tới thư mục /etc/nginx/sites-available. Tại đây, tạo file có tên sample.com. Tên nên trùng với admin.

Thêm code này vào file mới tạo:

# Redirect HTTP -> HTTPS
server {
listen 80;
server_name www.sample.com sample.com;
include snippets/letsencrypt.conf;
return 301 https://sample.com$request_uri;
}
# Redirect WWW -> NON-WWW
server {
listen 443 ssl http2;
server_name www.sample.com;
ssl_certificate /etc/letsencrypt/live/sample.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/sample.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/sample.com/chain.pem;
include snippets/ssl.conf;
return 301 https://sample.com$request_uri;
}
server {
listen 443 ssl http2;
server_name sample.com;
root /var/www/html/sample.com;
index index.php;
# SSL parameters
ssl_certificate /etc/letsencrypt/live/sample.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/sample.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/sample.com/chain.pem;
include snippets/ssl.conf;
include snippets/letsencrypt.conf;
# log files
access_log /var/log/nginx/sample.com.access.log;
error_log /var/log/nginx/sample.com.error.log;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}

Lưu ý là dùng đúng tên miền. Để dễ quản lý hơn, bạn hãy tạo symbolic link tới thư mục sites-enabled:

sudo ln -s /etc/nginx/sites-available/sample.com /etc/nginx/sites-enabled/

Bạn xác nhận cấu hình cho Nginx bằng lệnh sau:

sudo nginx -t

Nếu không có lỗi bạn sẽ thấy tin nhắn báo syntax is ok. Và có thể bỏ qua.

Giờ khởi động lại Nginx bằng lệnh:

sudo systemctl restart nginx

Vào lúc này bạn đã có PHP, MySQL và Nginx cấu hình xong và sẵn sàng để chạy. Bước tiếp theo là cài đặt WordPress lên.

8. Khởi chạy WordPress Nginx

Gần xong rồi, bước cuối chỉ là cài đặt WordPress thôi!

  • Mở trình duyệt bằng tên miền như là http://sample.com. Thay bằng tên của bạn!
  • Bạn sẽ thấy cửa sổ chọn ngôn ngữ. Chọn ngôn ngữ bạn thích.
  • Bạn sẽ thấy hướng dẫn cài đặt và cứ tiến hành làm theo để tới trang tiếp theo.
  • Ở trang cấu hình database, cung cấp tên database bạn tạo ở bước trên, username và password của nó. Trong trường hợp của chúng ta, nó sẽ là WordPressUser cho username và WordPress cho database.

Ngoài ra bạn có thể thêm một số thông tin cho WordPress, như username cho WordPress. Vì lý do bảo mật, hãy dùng tên username khác admin.

  • Hoàn tất cài đặt bằng cách nhất nút Install. Nó sẽ chuyển bạn về trang đăng nhập nơi bạn có thể nhập thông tin WordPress username và password vào.
  • Đăng nhập xong bạn sẽ thấy WordPress dashboard.
  • Tới lúc này bạn đã có thể thiết lập WordPress, như cài theme mới, thêm plugin,v.v.

Chúc bạn cài đặt WordPress trên Ubuntu chạy Nginx server thành công!

Mọi người cũng tìm kiếm: nginx wordpress, wordpress nginx, wordpress ubuntu 20.04 nginx, wordpress and nginx

You may also like

Leave a Comment