使用 Nginx + MariaDB + PHP 8.4 搭建 WordPress 并优化配置 1. 环境准备 在 Linux 服务器上,我们将使用以下组件来搭建 WordPress:
Nginx :作为 Web 服务器
MariaDB :作为数据库
PHP 8.4 :用于运行 WordPress
1.1 安装必要软件包 sudo apt update && sudo apt upgrade -ysudo apt install nginx mariadb-server php8.4-fpm php8.4-mysql php8.4-xml php8.4-curl php8.4-gd php8.4-mbstring unzip -y
1.2 启动并配置 MariaDB sudo systemctl start mariadbsudo systemctl enable mariadbsudo mysql_secure_installation
创建 WordPress 数据库和用户:
sudo mysql -u root -pCREATE DATABASE wordpress; CREATE USER 'wp_user' @'localhost' IDENTIFIED BY 'your_password' ; GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user' @'localhost' ; FLUSH PRIVILEGES; EXIT;
2. 安装 WordPress mkdir /var/www & cd /var/www/sudo wget https://cn.wordpress.org/latest-zh_CN.zipsudo unzip latest.zipsudo mv wordpress /var/www/wordpress
2.1 赋予 www-data 用户权限 sudo chown -R www-data:www-data /var/www/wordpresssudo chmod -R 755 /var/www/wordpresssudo chmod 644 /var/www/wordpress/wp-config.php
3. Nginx 配置 WordPress 3.1 Nginx 服务器块配置 编辑 /etc/nginx/conf.d/wordpress.conf 文件:
server { listen 443 ssl; listen [::]:443 ssl; http2 on ; server_name www.yourdomain.com; ssl_certificate /etc/nginx/cert/techmingle.cer; //需要你用acme.sh申请CA证书 ssl_certificate_key /etc/nginx/cert/techmingle.key; root /var/www/wordpress; index index.php index.html index.htm; location / { try_files $uri $uri / /index.php?$args ; } location ~ \.php$ { include fastcgi.conf; fastcgi_pass unix:/var/run/php/php8.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root $fastcgi_script_name ; fastcgi_cache php_cache; fastcgi_cache_valid 200 1h ; fastcgi_cache_use_stale error timeout invalid_header updating; fastcgi_cache_lock on ; fastcgi_buffer_size 16k ; fastcgi_buffers 4 16k ; fastcgi_busy_buffers_size 32k ; } location ~* \.(jpg|jpeg|png|gif|ico|css|js|svg|woff|woff2|eot|ttf|otf|ttc|mp4|webm|ogg|ogv|avi|mkv)$ { expires max; access_log off ; log_not_found off ; add_header Cache-Control "public, no-transform" ; } location ~ /\.(?!well-known) { deny all; } location = /xmlrpc.php { deny all; return 404 ; } } server { listen 80 ; listen [::]:80 ; server_name yourdomain.com; return 301 https://www.techmingle.org$request_uri ; } server { listen 443 ssl; listen [::]:443 ssl; server_name yourdomain.com; ssl_certificate /etc/nginx/cert/techmingle.cer; ssl_certificate_key /etc/nginx/cert/techmingle.key; return 301 https://www.yourdomain.com$request_uri ; }
4 启动服务 sudo systemctl restart nginxsudo systemctl restart php8.4-fpm
5. 访问 WordPress 在浏览器中访问 https://yourdomain.com,完成 WordPress 安装。