Cách cài đặt WordPress với Nginx trên AlmaLinux 8

theanh

Administrator
Nhân viên
WordPress là CMS miễn phí, mã nguồn mở và phổ biến nhất thế giới được xây dựng hoàn toàn bằng PHP. Hàng nghìn người trên toàn cầu sử dụng CMS này để chạy blog, trang web kinh doanh và cửa hàng thương mại điện tử. WordPress có một số tính năng tuyệt vời bao gồm bảng điều khiển quản trị đơn giản và dễ sử dụng, hàng nghìn plugin, cộng đồng lớn, chủ đề chuyên sâu, tùy chỉnh, v.v.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt WordPress với Apache và Let's Encrypt SSL trên AlmaLinux 8.

Điều kiện tiên quyết​

  • Một máy chủ chạy AlmaLinux 8.
  • Một tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
  • Một mật khẩu gốc được cấu hình trên máy chủ.

Cài đặt Máy chủ LAMP​

WordPress yêu cầu máy chủ LAMP phải được cài đặt trong máy chủ của bạn. Bạn có thể cài đặt nó bằng lệnh sau:
Mã:
dnf install httpd mariadb-server php php-mysqlnd php-dom php-simplexml php-xml php-xmlreader php-curl php-exif php-ftp php-gd php-iconv php-json php-mbstring php-posix php-sockets php-tokenizer unzip -y
Sau khi cài đặt máy chủ LAMP, hãy khởi động dịch vụ Apache và MariaDB và cho phép chúng khởi động khi khởi động lại hệ thống:
Mã:
systemctl start mariadb
systemctl start httpd
systemctl enable mariadb
systemctl enable httpd
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Cơ sở dữ liệu MariaDB​

Trước tiên, bạn sẽ cần đặt mật khẩu gốc MariaDB và bảo mật cài đặt MariaDB. Bạn có thể thực hiện bằng lệnh sau:
Mã:
mysql_secure_installation
Trả lời tất cả các câu hỏi như hiển thị bên dưới:
Mã:
Nhập mật khẩu hiện tại cho root (nhập nếu không có):Đặt mật khẩu gốc? [C/N] CMật khẩu mới:Nhập lại mật khẩu mới:Xóa người dùng ẩn danh? [C/N] CKhông cho phép đăng nhập root từ xa? [C/N] CXóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [C/N] CTải lại bảng đặc quyền ngay bây giờ? [Y/n] Y
Sau khi hoàn tất, hãy đăng nhập vào MariaDB bằng lệnh sau:
Mã:
mysql -u root -p
Sau khi đăng nhập, hãy tạo cơ sở dữ liệu và người dùng cho WordPress:
Mã:
MariaDB [(none)]> CREATE DATABASE wordpress;
MariaDB [(none)]> CREATE USER `wordpress`@`localhost` IDENTIFIED BY 'password';
Tiếp theo, cấp tất cả các quyền cho cơ sở dữ liệu WordPress bằng lệnh sau:
Mã:
MariaDB [(none)]> GRANT ALL ON wordpress.* TO `wordpress`@`localhost`;
Tiếp theo, xóa các quyền và thoát khỏi shell MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> QUYỀN XẢY RA;
MariaDB [(không có)]> EXIT;
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tải xuống WordPress​

Tiếp theo, hãy thay đổi thư mục thành thư mục gốc web Apache và tải xuống phiên bản WordPress mới nhất bằng lệnh sau:
Mã:
cd /var/www/html
wget https://wordpress.org/latest.tar.gz
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
tar -xvzf latest.tar.gz
Tiếp theo, hãy thay đổi thư mục thành wordpress và đổi tên tệp cấu hình mẫu:
Mã:
cd wordpress
mv wp-config-sample.php wp-config.php
Tiếp theo, hãy chỉnh sửa tệp cấu hình bằng lệnh sau:
Mã:
nano wp-config.php
Xác định cấu hình cơ sở dữ liệu của bạn như được hiển thị bên dưới:
Mã:
/** Tên cơ sở dữ liệu cho WordPress */define( 'DB_NAME', 'wordpress' );/** Tên người dùng cơ sở dữ liệu MySQL */define( 'DB_USER', 'wordpress' );/** Mật khẩu cơ sở dữ liệu MySQL */define( 'DB_PASSWORD', 'password' );/** Tên máy chủ MySQL */define( 'DB_HOST', 'localhost' );
Lưu và đóng tệp khi bạn hoàn tất, sau đó đặt quyền thích hợp cho thư mục WordPress:
Mã:
chown -R apache:apache /var/www/html/wordpress
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho WordPress​

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Apache cho WordPress. Bạn có thể tạo nó bằng lệnh sau:
Mã:
nano /etc/httpd/conf.d/wordpress.conf
Thêm các dòng sau:
Mã:
 ServerAdmin [emailprotected] DocumentRoot "/var/www/html/wordpress" ServerName wordpress.example.com ErrorLog "/var/log/httpd/example.com-error_log" CustomLog "/var/log/httpd/example.com-access_log" combined DirectoryIndex index.html index.php Options FollowSymLinks AllowOverride All Require all granted
Lưu và đóng tệp, sau đó khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart httpd
Bạn có thể kiểm tra trạng thái của Apache bằng lệnh sau:
Mã:
systemctl status httpd
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? httpd.service - Máy chủ HTTP Apache Đã tải: đã tải (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ sáu 2021-07-09 03:30:47 EDT; 3 giây trước Tài liệu: man:httpd.service(8) PID chính: 4153 (httpd) Trạng thái: "Đã bắt đầu, đang lắng nghe trên: cổng 80" Nhiệm vụ: 213 (giới hạn: 12524) Bộ nhớ: 24,5M CGroup: /system.slice/httpd.service ??4153 /usr/sbin/httpd -DFOREGROUND ??4155 /usr/sbin/httpd -DFOREGROUND ??4156 /usr/sbin/httpd -DFOREGROUND ??4157 /usr/sbin/httpd -DFOREGROUND ??4158 /usr/sbin/httpd -DFOREGROUND09/07 03:30:47 AlmaLinux systemd[1]: Đã dừng Máy chủ HTTP Apache.09/07 03:30:47 AlmaLinux systemd[1]: Khởi động Máy chủ Apache HTTP...
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Bảo mật WordPress bằng Let's Encrypt SSL​

Tiếp theo, bạn sẽ cần cài đặt ứng dụng khách Certbot để cài đặt Let's Encrypt SSL cho WordPress. Bạn có thể cài đặt bằng lệnh sau:
Mã:
dnf install epel-release -y
Mã:
dnf install certbot python3-certbot-apache
Tiếp theo, hãy lấy và cài đặt chứng chỉ SSL cho tên miền lets của bạn bằng lệnh sau:
Mã:
certbot --apache -d wordpress.example.com
Bạn sẽ được yêu cầu cung cấp địa chỉ email và chấp nhận điều khoản dịch vụ:
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator apache, Installer apacheNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' để hủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME. Bạn có đồng ý không?- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)es/(K)o: C- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có đồng ý, sau khi chứng chỉ đầu tiên của bạn được cấp thành công,chia sẻ địa chỉ email của bạn với Electronic Frontier Foundation, mộtđối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuậnphát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc mã hóa web,tin tức EFF, các chiến dịch và cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)o: CTài khoản đã đăng ký.Đang yêu cầu cấp chứng chỉ cho wordpress.example.comThực hiện các thử thách sau:Thử thách http-01 cho wordpress.example.comĐang chờ xác minh...Đang dọn dẹp các thử tháchTriển khai chứng chỉ cho VirtualHost /etc/httpd/conf.d/wordpress.confĐang chuyển hướng tất cả lưu lượng truy cập trên cổng 80 sang ssl trong /etc/httpd/conf.d/wordpress.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://wordpress.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Đăng ký danh sách gửi thư EFF (email: [emailprotected]).LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/wordpress.example.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/wordpress.example.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 2022-02-09. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* chứng chỉ của bạn, hãy chạy "certbot renew" - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le

Cấu hình Tường lửa​

Tiếp theo, bạn sẽ cần cho phép các cổng 80 và 443 đi qua tường lửa. Bạn có thể cho phép chúng bằng lệnh sau:
Mã:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
Tiếp theo, tải lại firewalld để áp dụng các thay đổi:
Mã:
firewall-cmd --reload
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Bảng điều khiển WordPress​

Tiếp theo, mở trình duyệt web của bạn và truy cập bảng điều khiển quản trị WordPress bằng URL . Bạn sẽ được chuyển hướng đến trang sau:



Chọn ngôn ngữ của bạn và nhấp vào Tiếp tục. Bạn sẽ thấy trang cấu hình trang web WordPress:



Cung cấp thông tin trang web của bạn và nhấp vào nút Cài đặt WordPress. Sau khi quá trình cài đặt hoàn tất, bạn sẽ thấy trang sau:



Nhấp vào nút Đăng nhập. Bạn sẽ được chuyển hướng đến trang đăng nhập WordPress:



Cung cấp tên người dùng, mật khẩu quản trị viên và nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển WordPress trên trang sau:


Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công WordPress với Apache và Let's Encrypt SSL trên AlmaLinux 8. Bây giờ bạn có thể dễ dàng tạo trang web của riêng mình bằng WordPress. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên