Cách cấu hình nginx cho wordpress

Trước khi bắt đầu, bạn sẽ cần một máy chủ web đã cài đặt Nginx/PHP/MariaDB. Nếu bạn cần mọi thứ được giải thích trong hướng dẫn này. Ubuntu. cài đặt máy chủ web – NGINX / PHP / MariaDB – RDR-IT

Công cụ web Nginx không đọc. tập tin htaccess

Chuẩn bị môi trường

Trước khi tấn công cài đặt WordPress trên máy chủ, chúng tôi sẽ chuẩn bị môi trường

  • Tạo máy chủ ảo (vhost)
  • Tạo cơ sở dữ liệu và người dùng
  • Tải xuống WordPress
  • Định cấu hình bản ghi DNS sẽ trỏ đến máy chủ web

Cấu hình máy chủ ảo

Trước khi quan tâm đến cấu hình, chúng tôi sẽ tạo các thư mục máy chủ ảo

Từ kết nối SSH hoặc trong bảng điều khiển, hãy nhập các lệnh sau

sudo mkdir /home/www-data/wordpress
sudo mkdir /home/www-data/wordpress/log
sudo mkdir /home/www-data/wordpress/public_html
sudo chown www-data /home/www-data/wordpress -R

3 dòng đầu tiên sẽ tạo các thư mục cho các tệp WordPress và dòng cuối cùng thay đổi chủ sở hữu

Chúng tôi sẽ sử dụng mặc định. conf để tạo cấu hình máy chủ ảo WordPress. Sao chép tệp bằng lệnh sau

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf

Mở tệp để sửa đổi cấu hình

sudo nano /etc/nginx/sites-available/wordpress.conf

Đây là tập tin cấu hình của tôi

server {
    listen       80;
	# Site URL
    server_name  wordpress.lab.priv;

    # Folder Access LOG
    access_log  /home/www-data/wordpress/log/access.log  main;
	
    location / {
		# Folder files WordPress 
        root   /home/www-data/wordpress/public_html;
		# Add index.php
        index  index.php index.html index.htm;
		# Rewrite URL for WordPress
		try_files     $uri $uri/ /index.php?$args;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
		#  Folder files WordPress
        root           /home/www-data/wordpress/public_html;
        #try_files      $uri =404;
        fastcgi_index  index.php;
		# Call PHP
        fastcgi_pass   unix:/run/php/php7.3-fpm.sock;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
		# Param PHP for WordPress
		fastcgi_param  PHP_VALUE "memory_limit=\"256M\" 
		post_max_size=\"128M\"
		upload_max_filesize=\"32M\"";
        include        fastcgi_params;    
   }

 }

Kích hoạt máy chủ ảo WordPress

sudo ln -s /etc/nginx/sites-available/wordpress.conf /etc/nginx/sites-enabled/

Kiểm tra cấu hình Nginx

sudo nginx -t

Tải lại cấu hình để kích hoạt máy chủ ảo

sudo systemctl reload nginx

cấu hình cơ sở dữ liệu

Để hoạt động, WordPress cần cơ sở dữ liệu MariaDB hoặc MySQL. Trong phần này, chúng tôi sẽ tạo một người dùng và cơ sở dữ liệu dành riêng cho việc cài đặt WordPress

Từ phpMyAdmin, nhấp vào Tài khoản người dùng 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Nhấp vào Thêm tài khoản người dùng 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Nhập tên người dùng 1 (wordpress), nhập mật khẩu (x2) 2 . , check the box Create a database with his name and give this user all the privileges on this database 3 and click on Run 4.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Cơ sở dữ liệu 1 được tạo cũng như người dùng.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Tải xuống WordPress

Bây giờ chúng tôi sẽ tải xuống kho lưu trữ WordPress và sao chép các tệp vào thư mục

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
8

Chuyển đến thư mục tmp bằng lệnh sau

________số 8

Tải xuống phiên bản mới nhất của WordPress bằng lệnh wget

sudo wget https://wordpress.org/latest.tar.gz
  • Cách cấu hình nginx cho wordpress
    Cách cấu hình nginx cho wordpress
  • Cách cấu hình nginx cho wordpress
    Cách cấu hình nginx cho wordpress

Khi kho lưu trữ đã được tải xuống, hãy giải nén nó

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
9

Di chuyển nội dung (tệp WordPress) vào thư mục máy chủ ảo

sudo nano /etc/nginx/sites-available/wordpress.conf
0

Thay đổi chủ sở hữu của thư mục và tệp

sudo nano /etc/nginx/sites-available/wordpress.conf
1

cài đặt WordPress

Bây giờ chúng tôi đã sẵn sàng để cài đặt WordPress

Khởi chạy trình duyệt Internet và nhập url của trang web WordPress. Ở bước đầu tiên, hãy chọn ngôn ngữ 1 và nhấp vào Tiếp tục 2 .

  • Cách cấu hình nginx cho wordpress
    Cách cấu hình nginx cho wordpress
  • Cách cấu hình nginx cho wordpress
    Cách cấu hình nginx cho wordpress

Một trang sẽ xuất hiện, cho biết bạn cần cài đặt WordPress những gì, nhấp vào Đây là một phần 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Bạn phải nhập thông tin kết nối cơ sở dữ liệu, thông tin này sau đó sẽ được ghi trong wp-config. php tập tin nằm ở thư mục gốc của trang web. Nhập tên cơ sở dữ liệu 1 , tên người dùng 2 và mật khẩu 3 then the server address 4 and click on the Send button 5 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Có thể sửa đổi tiền tố của các bảng (wp_ theo mặc định), điều này đặc biệt hữu ích nếu bạn đang cài đặt nhiều WordPress trên cùng một cơ sở dữ liệu. Trong một môi trường chuyên dụng như ở đây, nếu bạn muốn cài đặt nhiều trang web WordPress, tôi khuyên bạn nên tạo một cơ sở dữ liệu cho mỗi lần cài đặt

Sau khi kiểm tra kết nối cơ sở dữ liệu thành công, hãy nhấp vào Bắt đầu cài đặt 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Định cấu hình tiêu đề trang web 1 , tên người dùng 2 . Nhấp vào Cài đặt WordPress 3 of the admin account and an e-mail address 4. Click on Install WordPress 5 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

WordPress đã được cài đặt, nhấp vào Kết nối 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Nhập thông tin đăng nhập 1 của tài khoản được tạo trong quá trình cài đặt và nhấp vào Kết nối 2.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Trang web WordPress của bạn đã sẵn sàng, tất cả những gì bạn phải làm là tùy chỉnh và thêm nội dung

  • Cách cấu hình nginx cho wordpress
    Cách cấu hình nginx cho wordpress
  • Cách cấu hình nginx cho wordpress
    Cách cấu hình nginx cho wordpress

Tối ưu WordPress với Memcached/Redis

Để hoàn thành hướng dẫn này, tôi sẽ giải thích cách tối ưu hóa hay đúng hơn là tăng tốc trang web WordPress của bạn bằng Memcached hoặc Redis

Memcached và Redis là hai dịch vụ “cơ sở dữ liệu” sử dụng bộ nhớ RAM để lưu trữ thông tin mà trang web WordPress của bạn thường xuyên sử dụng

Hai dịch vụ này được sử dụng song song với cơ sở dữ liệu MariaDB/MySQL để có một hệ thống cache hiệu suất cao

Có thể sử dụng phần sau của hướng dẫn cho máy chủ Apache

Cài đặt plugin Trình theo dõi truy vấn

Trước khi thiết lập các dịch vụ bộ đệm, chúng tôi sẽ cài đặt một plugin WordPress cho phép chúng tôi đánh giá hiệu quả

Từ giao diện quản trị, hãy di con trỏ chuột qua Tiện ích mở rộng 1 và nhấp vào Thêm 2.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Đặt con trỏ vào hộp tìm kiếm 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Trong hộp tìm kiếm, nhập màn hình truy vấn 1 , sau khi tìm kiếm xong, hãy nhấp vào nút Cài đặt ngay bây giờ 2 of the plugin.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sau khi tiện ích mở rộng được cài đặt, hãy nhấp vào nút Kích hoạt 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Tiện ích mở rộng được kích hoạt 1 , bạn cũng có thể thấy trong thanh quản trị, PHP 2 . generation information and in particular the number of requests.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Để làm giá trị tham khảo, tôi sẽ lấy số lượng yêu cầu trên trang chủ, như có thể thấy trong ảnh chụp bên dưới, tôi có 39 yêu cầu

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Memcached

Chúng ta sẽ bắt đầu với Memcached, đầu tiên chúng ta phải cài đặt dịch vụ trên máy chủ, sau đó cài đặt tiện ích mở rộng PHP và cuối cùng là tiện ích mở rộng trên WordPress để hỗ trợ trên CMS

Cài đặt Memcached

Từ một thiết bị đầu cuối, nhập lệnh sau để cài đặt trên Ubuntu/Debian

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
3
Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sau khi cài đặt hoàn tất, để xác nhận rằng nó đang hoạt động bình thường, hãy nhập lệnh sau để kết nối với dịch vụ Memcached.

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
0

Để thoát nhập lệnh thoát

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
1
Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Cài đặt tiện ích mở rộng Memcached cho PHP

Vẫn trong SHELL, nhập lệnh sau để cài đặt tiện ích mở rộng php-memcached

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
2

Khởi động lại dịch vụ PHP được sử dụng bởi WordPress

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
3

Để xác minh rằng tiện ích mở rộng đang hoạt động, cách dễ nhất là đi qua một tệp có hàm phpinfo () và xác minh rằng phần memcached có mặt

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sử dụng Memcached với WordPress

Phần tiếp theo là minh họa việc sử dụng Memcached với WordPress trong hướng dẫn này, để sử dụng trong sản xuất, tôi khuyên bạn nên sử dụng plugin bộ đệm quản lý bộ đệm Đối tượng như LsCache hoặc W3 Total Cache

Plugin được sử dụng bên dưới không cho phép bạn xóa bộ đệm

Từ phần quản trị WordPress, chuyển đến trang thêm tiện ích mở rộng, tìm kiếm memcached 1 và nhấp vào Cài đặt ngay 2 on the Object Cache 4 everyone plugin.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sau khi cài đặt hoàn tất, nhấp vào Kích hoạt 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sau khi kích hoạt xong, hãy kiểm tra Tiện ích mở rộng nâng cao 1 , để có bộ đệm đối tượng. php 2 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Quay lại trang chủ của trang web và làm mới nó (2 lần để tạo bộ đệm) và chúng ta có thể thấy rằng để tạo trang, chỉ có 8 yêu cầu được thực hiện so với 39 yêu cầu không có Memcached

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Kết quả khá ấn tượng, hiệu suất đạt được trên trang web WordPress không có plugin và không có nội dung ít ảnh hưởng đến thời gian tạo. Bộ đệm đối tượng có thể cải thiện đáng kể thời gian tạo này trên một trang web có nhiều plugin và bài viết bằng cách giới hạn số lượng yêu cầu. Và nó cảm thấy cho du khách

làm lại

Giống như Memcached, bạn phải cài đặt các gói trên máy chủ, các tiện ích mở rộng PHP và tiện ích mở rộng WordPress

Cài đặt REDIS

Nhập lệnh sau để cài đặt REDIS trên máy chủ

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
4
Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Để kiểm tra dịch vụ REDIS, có một số giải pháp.

Với TELNET nhập lệnh sau

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
5

Để thoát telnet, hãy nhập thoát

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Với redis-cli

Nhập các lệnh sau

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
6

Nếu mọi thứ hoạt động, câu trả lời là PONG

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Để thoát khỏi ứng dụng khách Redis, hãy nhập. từ bỏ

Cài đặt tiện ích mở rộng Redis cho PHP

Để cài đặt tiện ích mở rộng Redis cho PHP, hãy nhập lệnh bên dưới thay thế X bằng phiên bản PHP đang được sử dụng

sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/wordpress.conf
7
Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Để xác minh rằng mô-đun Redis đã được cài đặt đúng cách, hãy kiểm tra từ hàm phpinfo () xem có phần redis không.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sử dụng Redis với WordPress

Nếu bạn đã cài đặt tiện ích mở rộng Memcached thì phải tắt nó trước khi cài đặt tiện ích mở rộng Redis

Phần tiếp theo là minh họa việc sử dụng Memcached với WordPress trong hướng dẫn này, để sử dụng trong sản xuất, tôi khuyên bạn nên sử dụng plugin bộ đệm quản lý bộ đệm Đối tượng như LsCache hoặc W3 Total Cache

Từ phần quản trị WordPress, chuyển đến trang thêm tiện ích mở rộng, tìm kiếm redis 1 và nhấp vào Cài đặt ngay 2 on the Redis Object Cache plugin.

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sau khi cài đặt hoàn tất, nhấp vào nút Kích hoạt 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Sau khi plugin được cài đặt và chuyển hướng đến trang tiện ích mở rộng, ở cấp plugin Redis Object Cache, hãy nhấp vào Cài đặt 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Nhấp vào Bật bộ nhớ đệm đối tượng 1 .

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Khi bộ đệm đối tượng được kích hoạt, chúng ta có thể thấy rằng kết nối đến máy chủ Redis đã được thực hiện. Với tiện ích mở rộng này, có thể xóa bộ đệm bằng cách nhấp vào Flush Cache

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Quay lại trang chủ của trang web và làm mới nó (2 lần để tạo bộ đệm) và chúng ta có thể thấy rằng để tạo trang, chỉ có 6 yêu cầu được thực hiện so với 39 yêu cầu không có Redis

Cách cấu hình nginx cho wordpress
Cách cấu hình nginx cho wordpress

Memcached hay Redis?

Bây giờ bạn đã xem cả hai giải pháp, chắc hẳn bạn đang phân vân lựa chọn… hai giải pháp là tương đương nhau, tốt nhất là bạn nên thử nghiệm cả hai và tự mình lựa chọn

Không thể sử dụng cả hai cùng lúc cho Object cache, mặt khác nếu bạn sử dụng plugin W3 Total Cache thì có thể sử dụng đồng thời hai dịch vụ cho các chức năng khác nhau, ví dụ cache trang HTML trên Memcached

Bạn có thể sử dụng NGINX với WordPress không?

Nginx hỗ trợ proxy ngược, bộ nhớ đệm, truyền phát đa phương tiện, cân bằng tải và hơn thế nữa. Điều đó làm cho nó rất phù hợp với trang web WordPress được cung cấp bởi VPS . Rất ít tính năng sẵn có của Nginx là. Nginx được xây dựng để hoạt động khi sử dụng bộ nhớ thấp.
Thiết lập Nginx cho WordPress Permalinks . Lưu tệp của bạn và khởi động lại dịch vụ Nginx. Đó là nó. Bây giờ WordPress sẽ có thể truy cập được bằng các liên kết cố định được định cấu hình trong Cài đặt chung. Edit the Nginx configuration file and add the following line under the location section. Save your file and restart the Nginx service. That's it. Now WordPress will be accessible with configured permalinks under the General settings.

Tại sao nên sử dụng NGINX cho WordPress?

Nginx được được thiết kế cho các tình huống có lưu lượng truy cập cao . Nó không chỉ có thể quản lý nhiều lưu lượng truy cập mà còn có thể xử lý các yêu cầu của WordPress CMS mà không làm giảm hiệu suất. Ngoài ra, chúng tôi sử dụng bộ nhớ đệm tích hợp, giúp máy chủ của bạn tăng thêm tốc độ.

Làm cách nào để cài đặt NGINX và cấu hình nó?

Để cài đặt Mã nguồn mở NGINX, hãy làm theo các bước sau. .
Truy cập thiết bị đầu cuối của bạn
thêm chìa khóa. $ sudo apt-key thêm nginx_signing. Chìa khóa
Thay đổi thư mục thành /etc/apt. .
Cập nhật phần mềm NGINX. $ sudo apt-get cập nhật
Cài đặt NGINX. $ sudo apt-get cài đặt nginx
Nhập Y khi được nhắc
Bắt đầu NGINX. $ sudo systemctl bắt đầu nginx. Dịch vụ