如何使用 Nginx、MySQL、 PHP 在 Ubuntu 22.04 上安装 WordPress

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愉快!

相关推荐
pk_xz12345644 分钟前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
小珑也要变强1 小时前
Linux之sed命令详解
linux·运维·服务器
瓜牛_gn1 小时前
mysql特性
数据库·mysql
Lary_Rock3 小时前
RK3576 LINUX RKNN SDK 测试
linux·运维·服务器
云飞云共享云桌面5 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
Peter_chq5 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
Yaml46 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
追风林6 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
一坨阿亮6 小时前
Linux 使用中的问题
linux·运维
dsywws7 小时前
Linux学习笔记之vim入门
linux·笔记·学习