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:
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:
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:
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:
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
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:
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 đó:
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.
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:
http://www.wordpress.local
Điều này sẽ đưa chúng ta đến Trình hướng dẫn cài đặt WordPress.
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 đó
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.
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.
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ợ).
Và từ đó, chúng tôi có thể bắt đầu phát triển trang web của mình:
Đị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_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 = 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ể.
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.
Nó không hoạt động 🙁
Xin chào. Cài đặt không thành công ở điểm nào?
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.