Apache通常是部署WordPress的首选,因为它被广泛使用,配置简单,并且与WordPress的要求具有强大的兼容性。
然而,Nginx是一个可行的替代方案,并提供了自己的一系列优势。Nginx以其高性能而闻名,特别是在处理大量并发连接时,可以实现更快的网页加载速度。此外,Nginx以资源利用效率高著称,这对资源有限的服务器非常有益。
Nginx能够高效处理静态内容以及具有反向代理功能,这也使得Nginx成为WordPress托管的强有力竞争者,特别是在高流量场景下或对具有复杂缓存需求的动态网站而言。
我们首先更新软件包列表:
sudo apt update
PHP、MySQL和Nginx安装 请注意,在Ubuntu上使用Nginx部署时,使用php-fpm
(PHP FastCGI进程管理器)而不是标准的PHP模块,因为Nginx不会在自身内部嵌入PHP处理。
与Apache不同,Apache可以使用类似mod_php
的模块在内部处理PHP,Nginx则充当反向代理,需要外部处理器来处理PHP文件。php-fpm
通过充当PHP脚本的FastCGI服务器来提供此功能,允许Nginx与其通信以处理PHP代码。
此设置增强了性能和可伸缩性,因为php-fpm
可以同时处理多个PHP进程,使其更适合高流量的网站。
sudo apt install php-fpm php-mysql mysql-server nginx unzip
配置Nginx以与PHP一起工作 现在让我们替换Nginx的"默认"配置
cd /etc/nginx/sites-available sudo rm default sudo nano default
然后我们可以将以下配置粘贴到新创建的空文件中:(注意PHP的版本,我的就8.1 php8.1-fpm.sock
)
server { listen 80; server_name your_server_domain_or_IP; root /var/www/html; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
重新启动Nginx 我们需要重新启动Nginx以使新配置生效
sudo systemctl restart nginx.service
删除默认的index.html页面
cd /var/www/html sudo rm index.nginx-debian.html
将WordPress下载到Ubuntu服务器 在/var/www/html文件夹中,让我们从wordpress.org下载WordPress:
sudo wget https://wordpress.org/latest.zip
提取WordPress存档的内容
sudo unzip latest.zip
删除WordPress压缩文件
sudo rm latest.zip
将WordPress移动到服务器的根文件夹
sudo mv wordpress/* .
更改WordPress文件的所有者
sudo chown -R www-data:www-data *
保护MySQL安装 为了提高MySQL的安全性,建议运行mysql_secure_installation脚本:
sudo mysql_secure_installation
对所有问题都回答"是",并选择'2'作为所需密码强度。
创建数据库和数据库用户 首先我们需要启动MySQL:
sudo mysql
然后,我们可以为WordPress创建数据库:
CREATE DATABASE wordpress_db;
和一个数据库用户:
CREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY '密码'; # 本地
CREATE USER 'wordpress_user'@'%' IDENTIFIED BY '密码'; # 所有主机
确保用更安全的密码替换密码!
然后我们需要为用户授予对数据库的权限:
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wordpress_user'@'localhost';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wordpress_user'@'%'; # 对应上面的第二种
然后我们可以退出MySQL
quit
安装WordPress 现在我们可以访问服务器的IP地址并使用WordPress内置的安装程序。
我们需要提供刚刚创建的数据库和用户名。
创建wp-config.php 如果收到"无法写入wp-config.php文件"的消息:
在/var/www/html文件夹中创建文件:
sudo nano wp-config.php
然后从WordPress安装程序中复制文件的内容,并将其粘贴到您的文件中。
完成后,点击"运行安装",WordPress将被安装
祝您使用WordPress愉快!