WordPress với Nginx, cài đặt cục bộ CMS này trên Ubuntu 20.04

về cài đặt wordpress với nginx

Trong phần tiếp theo, chúng ta sẽ xem xét cách chúng ta có thể cài đặt WordPress với Nginx trên Ubuntu 20.04. Điều này CMS là một trong những hệ thống quản lý nội dung mã nguồn mở được sử dụng rộng rãi nhất. Nó cung cấp cho khoảng 60 triệu trang web. Nó được viết bằng PHP và sử dụng MariaDB / MySQL làm cơ sở dữ liệu để lưu trữ thông tin.

Trong những dòng tiếp theo, chúng ta sẽ xem cách cài đặt WordPress cục bộ với Nginx trên Ubuntu 20.04. Vì lý do này, trước khi tiếp tục sẽ là cần thiết đã cài đặt ngăn xếp phần mềm LEMP trên Ubuntu 20.04 để bắt đầu.

Cài đặt WordPress với Nginx trên Ubuntu 20.04

Cài đặt phần mở rộng PHP

Các phần mở rộng sau là bắt buộc để WordPress chạy trên Ubuntu 20.04. Để cài đặt chúng, chúng ta sẽ chỉ phải mở một terminal (Ctrl + Alt + T) và thực hiện:

cài đặt các gói php

sudo apt update && sudo apt install php-dom php-simplexml php-ssh2 php-xml php-xmlreader php-curl php-exif php-ftp php-gd php-iconv php-imagick php-json php-mbstring php-posix php-sockets php-tokenizer

Tạo khối máy chủ Nginx cho WordPress

Chúng tôi sẽ tạo một khối máy chủ Nginx để cài đặt WordPress. Khối máy chủ này yêu cầu tên miền, số cổng, gốc tài liệu, vị trí đăng ký, v.v.. Đối với ví dụ này, dữ liệu mà tôi sẽ sử dụng như sau. Hãy để mỗi người dùng điều chỉnh chúng theo nhu cầu của họ:

  • Tên miền: www.wordpress.local
  • Thư mục gốc tài liệu: /sites/www.wordpress.local/public_html/
  • Nhật ký: /sites/www.wordpress.local/logs/

Bắt đầu nào tạo tệp cấu hình khối máy chủ trong thư mục /etc/nginx/conf.d với lệnh:

sudo vim /etc/nginx/conf.d/www.wordpress.local.conf

Bên trong tệp, chúng tôi sẽ đặt nội dung sau:

tệp cấu hình nginx cho WordPress cục bộ

server {
        server_name www.wordpress.local;
        root /sites/www.wordpress.local/public_html/;

        index index.html index.php;

        access_log /sites/www.wordpress.local/logs/access.log;
        error_log /sites/www.wordpress.local/logs/error.log;

        # No permitir que las páginas se representen en un iframe en dominios externos
        add_header X-Frame-Options "SAMEORIGIN";

        # Prevención MIME
        add_header X-Content-Type-Options "nosniff";

        # Habilitar el filtro de secuencias de comandos entre sitios en los navegadores compatibles
        add_header X-Xss-Protection "1; mode=block";

        # Evitar el acceso a archivos ocultos
        location ~* /\.(?!well-known\/) {
                deny all;
        }

        # Evitar el acceso a ciertas extensiones de archivo
        location ~\.(ini|log|conf)$ {
                deny all;
        }

        # Habilitar enlaces permanentes de WordPress
        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

}

Chúng tôi lưu tệp và thoát. Bây giờ chúng ta hãy tạo thư mục gốc tài liệu và thư mục bản ghi bằng cách sử dụng các lệnh:

tạo thư mục gốc tài liệu

sudo mkdir -p /sites/www.wordpress.local/public_html/

sudo mkdir -p /sites/www.wordpress.local/logs/

Chúng ta tiếp tục kiểm tra các tệp cấu hình Nginx:

kiểm tra tệp cấu hình nginx

sudo nginx -t

Một thông báo như trong ảnh chụp màn hình trước đó sẽ xác nhận rằng cấu hình máy chủ Nginx là chính xác. Chúng tôi kết thúc việc khởi động lại dịch vụ:

sudo systemctl restart nginx.service

Tạo cơ sở dữ liệu cho WordPress

tạo cơ sở dữ liệu cho WordPress với nginx

Hãy đăng nhập vào MariaDB / MySQL:

sudo mysql -u root -p

Tiếp theo chúng tôi tạo cơ sở dữ liệu cho WordPress:

CREATE DATABASE wordpress;

Sau đây sẽ là tạo một người dùng:

CREATE USER 'wpusuario'@'localhost' IDENTIFIED BY '123password';

Chúng ta tiếp tục cấp quyền cho người dùng đã tạo để truy cập cơ sở dữ liệu:

GRANT ALL PRIVILEGES ON wordpress.* TO 'wpusuario'@'localhost';

Và chúng tôi có thể vết:

quit

Tải xuống WordPress

Chúng tôi tải xuống phiên bản mới nhất của WordPress de WordPress.org với wget:

tải xuống phiên bản WP mới nhất

wget http://wordpress.org/latest.tar.gz

Bây giờ chúng ta hãy giải nén gói WordPress với lệnh tar:

tar -zxvf latest.tar.gz

Sau đây sẽ là di chuyển các tệp WordPress sang gốc tài liệu:

sudo mv wordpress/* /sites/www.wordpress.local/public_html/

Chúng tôi tiếp tục thay đổi thuộc tính để Nginx có thể ghi tệp vào gốc tài liệu đó:

thay đổi quyền của thư mục gốc

sudo chown -R www-data:www-data /sites/www.wordpress.local/public_html/

sudo chown -R www-data:www-data /sites/www.wordpress.local/logs/

Bây giờ chúng ta hãy tạo mục nhập máy chủ cho miền (trong ví dụ này www.wordpress.local) trong file / Etc / hosts, trong trường hợp môi trường của chúng tôi không có máy chủ DNS để phân giải tên:

sudo vim /etc/hosts

Bên trong tệp, chúng tôi sẽ thêm một mục nhập như hình dưới đây. IP được sử dụng là của máy tính cục bộ của tôi.

tệp máy chủ lưu trữ wordpress cục bộ

Cài đặt WordPress

Theo dõi dữ liệu trong ví dụ này, chúng tôi sẽ mở trình duyệt web và truy cập url:

lựa chọn ngôn ngữ trong cài đặt WP

http://www.wordpress.local

Điều này sẽ đưa chúng ta đến Trình hướng dẫn cài đặt WordPress.

bắt đầu trình hướng dẫn cài đặt wp

Chúng tôi sẽ phải viết chi tiết cơ sở dữ liệu để cho phép WordPress kết nối với nó. Nó sẽ là dữ liệu của cơ sở dữ liệu đã tạo trước đó

cấu hình cơ sở dữ liệu trong cài đặt Wp

Nếu kết nối thành công, chúng ta sẽ thấy thông báo thành công trên màn hình mới. Để tiếp tục, bạn chỉ cần nhấp vào Chạy cài đặt.

thông tin trang web địa phương WP

Trên màn hình tiếp theo, chúng ta sẽ phải viết tiêu đề trang web, người dùng quản trị WordPress, mật khẩu và địa chỉ email. Chúng ta sẽ chuyển sang màn hình tiếp theo bằng cách nhấp vào Cài đặt WordPress.

truy cập Wp cục bộ

Nếu mọi việc suôn sẻ, quá trình cài đặt WordPress đã hoàn tất. Bây giờ chúng ta có thể nhấp vào Truy cập để đi tới Quản trị viên WordPress (Phụ trợ).

Phụ trợ WordPress

Và từ đó, chúng tôi có thể bắt đầu phát triển trang web của mình:

wp trực diện

Định cấu hình kích thước tải lên tệp tối đa

Theo mặc định, PHP không cho phép tải lên tệp lớn hơn 2MB. Để cho phép tải lên tệp lớn hơn thông qua giao diện web WordPress, chúng tôi sẽ phải định cấu hình upload_max_filesize và post_max_size trong php.ini.

sudo vim /etc/php/7.4/fpm/php.ini

Ở đây chúng tôi đi đến Tìm kiếm upload_max_filesize y thay đổi kích thước tải lên thành 256M, nếu đó là những gì bạn cần:

upload_max_files trong php.ini

upload_max_filesize = 256M

Chúng tôi cũng sẽ Tìm kiếm post_max_size và chúng tôi sẽ thay đổi kích thước tải lên theo nhu cầu của chúng tôi:

post_max_size php.ini

post_max_size = 256M

Để hoàn thành chúng tôi sẽ thêm mô-đun chính client_max_body_size trong tệp cấu hình máy chủ Nginx.

sudo vim /etc/nginx/nginx.conf

Chỉ thị có thể được thêm vào khối HTTP (cho tất cả các trang web), khối máy chủ hoặc bối cảnh vị trí cụ thể.

chỉ thị trong nginx.conf

client_max_body_size 256M;

Chúng tôi lưu tệp và thoát. Chúng tôi kết thúc việc khởi động lại các dịch vụ:

sudo systemctl restart php7.4-fpm.service

sudo systemctl restart nginx.service

Và với điều này, chúng tôi sẽ có WordPress được cài đặt cục bộ trên Ubuntu 20.04.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   những câu văn hay dijo

    Nó không hoạt động 🙁

    1.    Damien A. dijo

      Xin chào. Cài đặt không thành công ở điểm nào?

  2.   Álvaro dijo

    Làm cách nào để định cấu hình Nginx để truy cập từ một máy bên ngoài từ cùng một mạng cục bộ?
    Khi áp dụng cấu hình được chỉ định và cố gắng nhập bằng tên quyền truy cập vào mặc định của Nginx.