LEMP cho VPS [Phần 5] – Cài đặt WordPress vào NGINX
Contents
- 1.Cài đặt mới một trang WordPress
- 2.Chuyển website khác về máy chủ
- 3.Cấu hình NGINX cho WordPress
- 3.1.Thiết lập rule cho Permalink
- 3.2.Thiết lập NGINX cho các plugin quan trọng (iThemes Security, W3 Total Cache,…)
- 3.3.Chuyển rule từ .htaccess sang NGINX
- 3.4.Tăng tốc cho WordPress trên máy chủ
- 4.Lời kết
- 4.1.Xem tiếp bài trong serie
- 5.Bài liên quan
Nếu mình không lầm thì mình đã viết 2 lần hướng dẫn cách cài đặt WordPress trên môi trường VPS cũng như cách chuyển dữ liệu của một website có sẵn về VPS rồi. Nên ở bài này mình sẽ không hướng dẫn lại mà sẽ trỏ link bạn tới những bài mà bạn cần xem nếu chưa biết cách cài đặt. Nhưng hầu hết các cách đó mình sử dụng WP CLI nên ở trong serie này là mình sẽ không sử dụng WP-CLI để cài đặt mà sẽ cài đặt hoàn toàn bằng thủ công.
Cài đặt mới một trang WordPress
Cách tạo database bạn hãy xem lại bài Cài đặt MariaDB.
Sau đó cd vào thư mục public_html của domain bạn đang sử dụng. Ví dụ:
cd /home/nginx/abcxyz.com/public_htmlVà xóa hết tất cả các file có trong thư mục đó đi bằng lệnh này:
rm -rf *Bây giờ ta chỉ việc tải source (file .zip) của WordPress về VPS bằng lệnh wget:
wget https://wordpress.org/latest.zipGõ ls xem đã có file latest.zip chưa nào.
Có rồi thì giải nén ra với lệnh unzip (nếu báo command not found thì gõ yum install unzip)
unzip latest.zip && mv wordpress/* . && rm -rf wordpressGiờ thì ls lại ta thấy đã có các file và thư mục nguồn của WordPress ngự trị tại thư mục public_html.
Còn một việc cần làm nữa là gắn user nginx và group nginx để sở hữu các file và thư mục trong này:
chown -R nginx:nginx *Ok, bây giờ bạn chỉ cần việc truy cập vào đường dẫn http://abcxyz.com rồi cài WordPress như thường thôi.
Chuyển website khác về máy chủ
Chắc chắn ở đây ai cũng đã có một website WordPress riêng nên sẽ cần tìm hiểu cách chuyển một website WordPress từ host khác về VPS này để sử dụng.
Hướng dẫn chuyển host về VPS mình đã có viết rất chi tiết tại đây nên bạn có thể xem qua.
Cấu hình NGINX cho WordPress
Do NGINX không sử dụng file .htaccess nên chúng ta cũng không thể nào mà sử dụng các nội dung trong file .htaccess như ở Apache để làm các công việc như rewrite đường dẫn sử dụng Permalink, bảo mật,…
Thiết lập rule cho Permalink
Bây giờ bạn hãy mở file cấu hình của domain bạn trong NGINX ra, ví dụ /etc/nginx/domains/abcxyz.com.conf và tìm:
location / { }Chèn đoạn sau vào giữa nó
try_files $uri $uri/ /index.php?$args;Chèn đúng là nó sẽ nhìn giống thế này:
location / { try_files $uri $uri/ /index.php?$args; }Lưu lại và gõ lệnh service nginx restart để khởi động lại NGINX.
Thiết lập NGINX cho các plugin quan trọng (iThemes Security, W3 Total Cache,…)
Hiện nay đa phần các plugin nổi tiếng và quan trọng trong WordPress đều có hỗ trợ cho NGINX bằng cách tự thêm các rules của nó vào file nginx.conf trong thư mục public_html (chưa có nó sẽ tự tạo). Do đó chúng ta chỉ cần include file này vào phần cấu hình của domain mà thôi.
Đầu tiên bạn xem trong thư mục public_html đã có file nginx.conf hay chưa. Nếu chưa có, thì hãy tạo ra và đừng viết gì vào. Và chown file này cho user nginx và group nginx để nó có thể tự ghi nội dung vào.
chown nginx:nginx /home/nginx/abcxyz.com/public_html/nginx.confSau đó mở file /etc/nginx/domains/abcxyz.com.conf và tìm:
include /etc/nginx/conf.d/staticfiles.conf;Thêm vào dưới
include /home/nginx/abcxyz.com/public_html/nginx.conf;Khởi động lại NGINX
service nginx restartBây giờ bạn có thể thử bằng cách cài plugin iThemes Security vào và kích hoạt chức năng đổi đường dẫn đăng nhập (Hide Login Area), nó sẽ tự ghi nội dung vào file nginx.conf nhưng bạn sẽ cần phải restart lại NGINX thì các rule đó mới hoạt động được, không giống như .htaccess.
Chuyển rule từ .htaccess sang NGINX
Nếu một số plugin nào nó chỉ hỗ trợ cho .htaccess mà không tự viết rule cho NGINX vào file nginx.conf thì bạn vẫn còn cách khác đó là dùng công cụ htaccess to NGINX converter để lấy code cấu hình cho NGINX vì bản thân cách thức hoạt động của cả 2 là giống nhau, chỉ khác ở cú pháp mà thôi.
Tăng tốc cho WordPress trên máy chủ
Nếu bạn sử dụng máy chủ và cài LEMP ở serie này, mình khuyến khích các bạn xem hướng dẫn W3 Total Cache để hỗ trợ tăng tốc WordPress tốt nhất trên môi trường máy chủ.
Lời kết
Vậy là coi như bây giờ bạn đã biết cách tạo một webserver sử dụng LEMP Stack và cài WordPress lên đó, bạn có thể sử dụng ngay bây giờ nhưng ở các bài sau, mình sẽ hướng dẫn bạn cài đặt thêm một số “phụ kiện” rất hay dành cho NGINX nữa để bạn có tốc độ load tốt hơn.
Xem tiếp bài trong serie
Phần trước: LEMP cho VPS [Phần 4] – Cài đặt MariaDBPhần kế tiếp: LEMP cho VPS [Phần 6] – OPcache cho WordPressBài liên quan
- LEMP cho VPS [Phần 3] – Tối ưu NGINX
- LEMP cho VPS [Phần 2] – Thêm VirtualHost (thêm domain) cho NGINX
- Giới thiệu về serie LEMP Webserver cho VPS
- [Case Study] 2GB RAM – 2 CPU cho website WordPress 200 users online
- LEMP cho VPS [Phần 4] – Cài đặt MariaDB
- LEMP cho VPS [Phần 8] – Tối ưu PHP-FPM và MariaDB
Content retrieved from:
https://thachpham.com/linux-webserver/nginx/lemp-cho-vps-phan-5-cai-dat-wordpress-cau-hinh-nginx.html.
Ý KIẾN THÀNH VIÊN