如何在 Ubuntu 22.04 上使用 LEMP 安装 WordPress 教程

news2025/1/10 13:45:08

简介:

本教程旨在指导你如何在 Ubuntu 22.04 上使用 LEMP 栈安装 WordPress。 WordPress 是一个用 PHP 编写的开源内容管理系统。LEMP 栈是 Linux,NGINX,MySQL 和 PHP 的缩写。WordPress 非常用户友好,并提供了多种选项,例如不同的插件和具有精美设计的各种主题,使其成为用户最可定制的 CMS。以下段落将介绍安装 WordPress 之前 LEMP 安装的所有步骤。

在 Ubuntu 22.04 上使用 LEMP 栈安装 WordPress 非常简单,可能需要 15 分钟。让我们开始吧!

安装和配置步骤

第一步:更新系统

在开始安装之前,我们将系统软件包更新到可用的最新版本:

sudo apt update -y && sudo apt upgrade -y

第二步:安装 LEMP 栈

首先,我们将从 Nginx Web 服务器开始。要安装 Nginx Web 服务器,请执行以下命令:

sudo apt install nginx -y

安装完成后,启动并启用 Nginx 服务:

sudo systemctl start nginx && sudo systemctl enable nginx

要检查服务的状态,你可以执行以下命令:

sudo systemctl status nginx

你应该收到以下输出:

root@host:/var/www/html# sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; preset: enabled)
     Active: active (running) since Tue 2024-12-03 09:17:30 CST; 1min 39s ago
       Docs: man:nginx(8)
   Main PID: 372371 (nginx)
      Tasks: 4 (limit: 4613)
     Memory: 3.0M (peak: 3.6M)
        CPU: 42ms
     CGroup: /system.slice/nginx.service
             ├─372371 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;"
             ├─372372 "nginx: worker process"
             ├─372373 "nginx: worker process"
             └─372374 "nginx: worker process"

Dec 03 09:17:30 host.test.vps systemd[1]: Starting nginx.service - A high performance web server and a reverse proxy server...
Dec 03 09:17:30 host.test.vps systemd[1]: Started nginx.service - A high performance web server and a reverse proxy server.

LEMP 栈的下一个是 MySQL 数据库服务。 要在 Ubuntu 22.04 上安装 MySQL,请执行以下命令:

sudo apt install mysql-server -y

安装完成后,启动并启用 MySQL 服务:

sudo systemctl start mysql && sudo systemctl enable mysql

要检查服务的状态,你可以执行以下命令:

sudo systemctl status mysql

你应该收到以下输出:

root@host:/var/www/html# sudo systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled; preset: enabled)
     Active: active (running) since Tue 2024-12-03 09:35:04 CST; 5s ago
    Process: 373238 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
   Main PID: 373246 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 4613)
     Memory: 369.7M (peak: 383.7M)
        CPU: 8.204s
     CGroup: /system.slice/mysql.service
             └─373246 /usr/sbin/mysqld

LEMP 栈的最后一个是 PHP 8.3 及其扩展。 要安装带有扩展的 PHP8.3,请执行以下命令:

sudo apt install php8.3-{mysql,curl,imagick,mbstring,xml,zip,fpm} -y

安装完成后,使用以下命令检查 PHP 版本:

php -v

你应该得到类似于以下的输出:

root@host:/var/www/html# php -v
PHP 8.3.6 (cli) (built: Sep 30 2024 15:17:17) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.6, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.6, Copyright (c), by Zend Technologies

第三步:创建 WordPress 数据库和用户

要创建 WordPress 数据库和用户,你应该在 MySQL 终端中逐个执行以下命令:

CREATE DATABASE wpdatabase;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'StrongPasswordHere';
GRANT ALL ON wpdatabase.* TO 'wpuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

请务必使用强密码替换 'StrongPasswordHere'

第四步:下载并安装 WordPress

由于 LEMP 栈已安装且数据库已创建,我们可以下载并安装 WordPress。 为此,请执行以下命令:

cd /var/www/html && wget https://wordpress.org/latest.zip

unzip latest.zip -d /var/www/html

设置文件和文件夹的正确权限:

chown -R www-data:www-data /var/www/html/wordpress/

cd /var/www/html/wordpress/

find . -type d -exec chmod 755 {} \\;

find . -type f -exec chmod 644 {} \\;

接下来,我们需要根据步骤 3 中的凭据配置 WordPress 的 wp-config.php 文件。使用你喜欢的编辑器打开 wp-config.php 文件,并进行如下更改:

首先,我们将重命名它:

cd /var/www/html/wordpress

mv wp-config-sample.php wp-config.php

接下来,我们将使用编辑器打开它。

// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wpdatabase' );

/** Database username */
define( 'DB_USER', 'wpuser' );

/** Database password */
define( 'DB_PASSWORD', 'StrongPasswordHere' );

请保存文件并关闭它。请务必使用你在第三步中设置的密码替换 'StrongPasswordHere'

第五步:创建 Nginx 配置文件

我们需要创建一个 Nginx 配置文件来访问我们的 WordPress 安装。

touch /etc/nginx/conf.d/wordpress.conf

打开新创建的文件,并粘贴以下代码行:

server {
listen 80;
   server_name YourDomainNameHere;

   root /var/www/html/wordpress;
   index index.php;

   server_tokens off;

   access_log /var/log/nginx/wordpress_access.log;
   error_log /var/log/nginx/wordpress_error.log;

   client_max_body_size 64M;

location / {
   try_files $uri $uri/ /index.php?$args;
}

   location ~ \\.php$ {
      fastcgi_pass  unix:/run/php/php8.3-fpm.sock;
      fastcgi_index index.php;
      include fastcgi_params;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include /etc/nginx/fastcgi.conf;
    }
}

请保存文件并关闭它。请务必将 YourDomainNameHere 替换为你的域名或服务器 IP 地址。

接下来,检查 Nginx 语法:

nginx -t

你应该收到以下输出:

root@host:/var/www/html/wordpress# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

你可以继续重启 Nginx:

sudo systemctl restart nginx

第六步:完成 WordPress 安装

本教程的最后一步是完成 WordPress 安装。为此,请通过 https://YourDomainNameHere 访问你的 WordPress 安装。

点击 继续 按钮,填写你要用于 WordPress 安装的凭据,然后点击 安装 WordPress

成功安装后,你将收到以下屏幕:

点击 登录,填写你之前设置的凭据,你将被重定向到以下屏幕:

就是这样。你已成功在 Ubuntu 22.04 上使用 LEMP 栈安装了最新的 WordPress。

结尾

恭喜你,你已经成功在 Ubuntu 22.04 服务器上使用 LEMP 栈安装了 WordPress。希望这篇教程对你有所帮助。

我的博客:https://blog.ivwv.site

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2274363.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PySide6基于QSlider实现QDoubleSlider

我在写小工具的时候,需要一个支持小数的滑动条。 我QSpinBox都找到了QDoubleSpinBox,QSlider愣是没找到对应的东西。 网上有好多对QSlider封装实现QDoubleSlider的文章。 似乎Qt真的没有这个东西,需要我们自行实现。 于是我也封装了一个&…

升级 Spring Boot 3 配置讲解 —— 支持断点传输的文件上传和下载功能

学会这款 🔥全新设计的 Java 脚手架 ,从此面试不再怕! 在现代 Web 应用中,文件上传和下载是非常常见的需求。然而,当文件较大时,传统的上传下载方式可能会遇到网络不稳定或传输中断的问题。为了解决这些问题…

Backend - C# EF Core 执行迁移 Migrate

目录 一、创建Postgre数据库 二、安装包 (一)查看是否存在该安装包 (二)安装所需包 三、执行迁移命令 1. 作用 2. 操作位置 3. 执行(针对visual studio) 查看迁移功能的常用命令: 查看…

KG-CoT:基于知识图谱的大语言模型问答的思维链提示

一些符号定义 知识图谱实体数量: n n n 知识图谱中关系类型数量: m m m 三元组矩阵: M ∈ { 0 , 1 } n n m \textbf{M} \in \{0, 1\}^{n \times n \times m} M∈{0,1}nnm, M i j k 1 M_{ij}^k 1 Mijk​1则说明实体 i i i和实…

HTML+CSS+JS制作中国传统节日主题网站(内附源码,含5个页面)

一、作品介绍 HTMLCSSJS制作一个中国传统节日主题网站,包含首页、节日介绍页、民俗文化页、节日活动页、联系我们页等5个静态页面。其中每个页面都包含一个导航栏、一个主要区域和一个底部区域。 二、页面结构 1. 顶部横幅区 包含传统中国风格的网站标题中国传统…

大模型WebUI:Gradio全解11——Chatbot:融合大模型的多模态聊天机器人(1)

大模型WebUI:Gradio全解11——Chatbots:融合大模型的聊天机器人(1) 前言本篇摘要11. Chatbot:融合大模型的多模态聊天机器人11.1 gr.ChatInterface()快速创建Chatbot11.1.1 定义聊天函数1. 随机回答“是”或“否”的聊…

springboot + vue+elementUI图片上传流程

1.实现背景 前端上传一张图片&#xff0c;存到后端数据库&#xff0c;并将图片回显到页面上。上传组件使用现成的elementUI的el-upload。、 2.前端页面 <el-uploadclass"upload-demo"action"http://xxxx.xxx.xxx:9090/file/upload" :show-file-list&q…

开源生成式物理引擎Genesis,可模拟世界万物

这是生成大模型时代 —— 它们能生成文本、图像、音频、视频、3D 对象…… 而如果将所有这些组合到一起&#xff0c;我们可能会得到一个世界&#xff01; 现在&#xff0c;不管是 LeCun 正在探索的世界模型&#xff0c;还是李飞飞想要攻克的空间智能&#xff0c;又或是其他研究…

【PPTist】批注、选择窗格

前言&#xff1a;本篇文章研究批注和选择窗格两个小功能 一、批注 批注功能就是介个小图标 点击可以为当前页的幻灯片添加批注&#xff0c;还能删除之前的批注 如果我们增加了登录功能&#xff0c;还可以在批注上显示当前的用户名和头像&#xff0c;不过现在是写死的。 左侧…

Vue进阶(贰幺贰)npm run build多环境编译

文章目录 一、前言二、实施三、总结&#xff1a;需要打包区分不同环境四、拓展阅读 一、前言 项目开发阶段&#xff0c;会涉及打包部署到多个环境应用场景&#xff0c;在不同环境中&#xff0c;需要进行项目层面的区分&#xff0c;做不同的操作&#xff0c;可以利用打包的--mo…

Elasticsearch—索引库操作(增删查改)

Elasticsearch中Index就相当于MySQL中的数据库表 Mapping映射就类似表的结构。 因此我们想要向Elasticsearch中存储数据,必须先创建Index和Mapping 1. Mapping映射属性 Mapping是对索引库中文档的约束&#xff0c;常见的Mapping属性包括&#xff1a; type&#xff1a;字段数据类…

“AI智慧组卷系统:让考试变得更简单、更公平!

大家好&#xff0c;我是一名资深的产品经理&#xff0c;今天咱们就来聊聊教育领域的一款黑科技产品——AI智慧组卷系统。在这个信息技术飞速发展的时代&#xff0c;AI技术已经渗透到了我们生活的方方面面&#xff0c;教育行业也不例外。下面我就用大白话给大家介绍一下这个AI智…

单元测试概述入门

引入 什么是测试&#xff1f;测试的阶段划分&#xff1f; 测试方法有哪些&#xff1f; 1.什么是单元测试&#xff1f; 单元测试&#xff1a;就是针对最小的功能单元&#xff08;方法&#xff09;&#xff0c;编写测试代码对其正确性进行测试。 2.为什么要引入单元测试&#x…

三、Angular 路由

一、简介 Angular 的路由服务是一个可选的服务&#xff0c;它用来呈现指定的 URL 所对应的视图。它并不是Angular 核心库的一部分&#xff0c;而是位于 angular/router 包中。像其他 Angular 包一样&#xff0c;路由服务在用户需要时才从此包中导入。 [1]. 创建路由模块 默认…

【MATLAB】绘制投资组合的有效前沿

文章目录 一、数据准备二、有效前沿三、代码3.1 数据批量读取、预处理3.2 绘制可行集3.3 绘制有效前沿3.4 其它-最大夏普率 一、数据准备 准备多个股票的的历史数据&#xff0c;目的就是找到最优的投资组合。 下载几个标普500里面的公式的股票数据吧&#xff0c;下载方法也可…

JuiceFS 2024:开源与商业并进,迈向 AI 原生时代

即将过去的 2024 年&#xff0c;是 JuiceFS 开源版本推出的第 4 年&#xff0c;企业版的第 8 个年头。回顾过去这一年&#xff0c;JuiceFS 社区版依旧保持着快速成长的势头&#xff0c;GitHub 星标突破 11.1K&#xff0c;各项使用指标增长均超过 100%&#xff0c;其中文件系统总…

重生之我在异世界学编程之C语言:枚举联合篇

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 本文目录 引言正文枚举&#xff08;Enum&#xff0…

6 分布式限流框架

限流的作用 在API对外互联网开放的情况下&#xff0c;是无法控制调用方的行为的。当遇到请求激增或者黑客攻击的情况下&#xff0c;会导致接口占用大量的服务器资源&#xff0c;使得接口响应效率的降低或者超时&#xff0c;更或者导致服务器宕机。 限流是指对应用服务进行限制…

【Linux系列】如何使用 nohup 命令在后台运行脚本

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

门禁系统与消防报警的几种联动方式

1、规范中要求的出入口系统与消防联动 1.1《建筑设计防火规范》GB 50016-2018 1.2《民用建筑电气设计规范》JGJ 16-2008  14.4出入口控制系统 3 设置在平安疏散口的出入口限制装置&#xff0c;应与火灾自动报警系统联动;在紧急状况下应自动释放出入口限制系统&…