秋雨De blog

  • 首页
  • 留言板
  • 关于
  • rss
秋雨De blog
一个技术小白的个人博客
  1. 首页
  2. wordpress开发
  3. 正文

LEMP 环境配置与 WordPress 网站搭建

2024年12月4日 1096点热度 0人点赞 2条评论

前言

在现代的 Web 开发中,搭建一个高效、稳定的网站环境是每个开发者必须掌握的技能之一。LEMP(Linux + Nginx + MySQL/MariaDB + PHP)作为一种轻量、高效的 Web 服务器架构,越来越受到开发者的青睐。与传统的 LAMP 环境(Apache 代替 Nginx)相比,LEMP 环境更注重性能优化,尤其适合需要高并发处理和大流量的网站。

WordPress,作为全球最流行的内容管理系统(CMS),具有开源、易用、插件丰富等优点,成为了许多个人博客、企业官网以及电子商务网站的首选平台。如果你希望在自己的服务器上搭建一个 WordPress 网站,LEMP 环境将为你提供快速、稳定的支持。

本教程将带你一步步完成 LEMP 环境的搭建,并教你如何在此环境中部署和配置 WordPress 网站。无论你是初学者,还是已有一定经验的开发者,都能通过本文掌握搭建过程中的关键步骤。

安装 Nginx

在 LEMP 环境中,Nginx 作为 Web 服务器,以其高效、稳定和轻量的特点,成为许多高流量网站的首选。接下来,我们将通过官方渠道在 Ubuntu 系统中安装 Nginx。

为了确保 Nginx 安装包的安全性,我们需要导入 Nginx 官方的 GPG 签名密钥:

导入 Nginx 官方签名密钥

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

此命令将下载并转换 Nginx 的签名密钥,以便系统可以验证安装包的完整性和来源。

添加 Nginx 官方 APT 存储库

接着,我们需要将 Nginx 官方的 APT 存储库添加到系统中,确保能够从官方源安装 Nginx:

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

这条命令会自动根据你的 Ubuntu 版本(通过 lsb_release -cs)选择对应的 Nginx 包版本,并将其源地址添加到系统的 APT 配置中。

设置存储库优先级(Pinning)

为了确保 Nginx 总是从官方源安装并避免使用其他第三方源的包,我们需要设置一个存储库优先级策略:

echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
    | sudo tee /etc/apt/preferences.d/99nginx

这将会使得来自 Nginx 官方源的包拥有最高优先级,确保系统始终使用官方版本。

更新软件包列表并安装 Nginx

完成以上步骤后,更新系统的软件包列表,并安装 Nginx:

sudo apt update
sudo apt install nginx

安装完成后,Nginx 将会自动启动,并且可以通过访问服务器的 IP 地址来检查 Nginx 是否成功运行。

安装php

在 LEMP 环境中,PHP 是处理动态内容和与数据库交互的关键组件。通过 PHP,WordPress 能够动态生成页面内容,并与 MySQL 数据库进行交互。接下来,我们将安装 PHP 及其所需的扩展,以确保 WordPress 能够正常运行。

添加 PHP 官方 PPA

sudo add-apt-repository ppa:ondrej/php
sudo apt update

安装 PHP 及相关扩展

apt install php8.4 php8.4-fpm php8.4-mysqli php8.4-curl php8.4-dom php8.4-imagick  php8.4-mbstring  php8.4-zip  php8.4-gd  php8.4-intl

配置 PHP-FPM 与 Nginx 配合

编辑 Nginx 网站配置文件时,通常需要修改 /etc/nginx/nginx.conf 或 /etc/nginx/conf.d/default.conf 文件。需要注意的是,在某些情况下,nginx.conf 文件中可能会使用 include /etc/nginx/conf.d/*.conf; 指令,直接包含 conf.d 文件夹中的所有配置文件。因此,修改配置时,除了可以直接编辑 nginx.conf,也可以选择编辑位于 conf.d 目录中的其他配置文件。

我们找到default.conf替换成

server {
    listen       80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;
    index index index.php index.html index.htm;
    root /var/www/html;
    location / {
            try_files $uri $uri/ /index.php?$args;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        #root           html;
                  include        fastcgi_params;
        fastcgi_pass   unix:/var/run/php/php8.4-fpm.sock; //如果你安装的其他的版本,就需要自己看一下自己的版本是啥
        #fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        #include        fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

测试 PHP 配置

<?php phpinfo(); ?>

通过访问 http://your_ip/index.php,你应该能够看到 PHP 配置页面,确认 PHP 是否正确安装。

使用 Docker Compose 安装 MySQL

MySQL 或 MariaDB 是 LEMP 环境中的数据库,用于存储 WordPress 网站的数据。我们将使用 Docker Compose 来管理 MySQL 容器,以便更灵活、便捷地进行管理。

安装 Docker 和 Docker Compose

确保系统已安装 Docker 和 Docker Compose。如果未安装,请参考官方文档进行安装。

创建 docker-compose.yml 文件

在项目目录下创建一个 docker-compose.yml 文件,定义 MySQL 服务配置:

services:
  mysql:
    image: mysql:9.1.0
    container_name: mysql
    restart: always
    volumes:
      - ./mysql/data:/var/lib/mysql
    ports:
      - 3306:3306
    security_opt:
      - seccomp:unconfined
    environment:
      - MYSQL_ROOT_PASSWORD=password
      - MYSQL_DATABASE: wordpress               # 创建一个名为 wordpress 的数据库
      - MYSQL_USER: wordpressuser               # 创建一个名为 wordpressuser 的用户
      - MYSQL_PASSWORD: wordpresspassword       # 为 wordpressuser 设置密码

启动 MySQL 容器

docker-compose up -d

使用 docker ps 命令查看容器是否成功启动。

连接 MySQL 容器

要连接到 MySQL 容器中的数据库,可以使用以下命令:

docker exec -it mysql-container mysql -u root -p

输入密码后,进入 MySQL 命令行界面,验证数据库是否创建成功:

SHOW DATABASES;

安装wordpress

在 LEMP 环境中,安装 WordPress 需要下载 WordPress 文件并配置 Nginx、PHP 和 MySQL,确保 WordPress 可以正常运行。

下载 WordPress 文件

首先,我们需要下载 WordPress 的最新版本并将其解压到适当的目录。进入 /var/www/html 目录并执行以下命令:

cd /var/www/html
sudo wget https://cn.wordpress.org/latest-zh_CN.zip
sudo tar -xzvf latest.tar.gz

设置 WordPress 目录权限

为了确保 Nginx 和 PHP-FPM 能够正常访问和写入 WordPress 文件,设置正确的权限非常重要。执行以下命令:

sudo chown -R www-data:www-data /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

配置 Nginx

把root /var/www/html 改成root /var/www/html/wordpress 定位到wordpress的目录

访问 WordPress 安装界面

在浏览器中访问 http://your_ip 或 http://your_domain,你将看到 WordPress 安装界面。按照提示完成安装,输入站点信息、管理员账号和密码,完成 WordPress 安装。

恭喜你!你已经成功搭建了一个高效、稳定的 WordPress 网站。通过本教程,我们覆盖了从安装 Nginx、PHP、MySQL 到配置 WordPress 的每一个步骤。LEMP 环境因其高性能和低资源占用,特别适合高流量和高并发的网站需求。

在搭建完成后,记得定期备份数据,并根据实际需求进行性能优化和安全加固。你可以进一步优化 Nginx 配置,安装更多 PHP 扩展,或配置 SSL 加密来提升网站的安全性和性能。

希望本教程能帮助你顺利搭建自己的 WordPress 网站。如果遇到任何问题,欢迎随时交流或查阅相关文档。祝你在网站建设的道路上取得成功,创造更多精彩内容!

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2024年12月4日

fallrain

种一棵树最好的时间是十年前,其次是现在。

点赞
< 上一篇

文章评论

  • Leak

    我记得之前都是LNMP

    2024年12月20日
    回复
    • fallrain

      @Leak 对,LEMP是标准命名,LNMP是中文命名

      2024年12月22日
      回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    取消回复

    fallrain

    种一棵树最好的时间是十年前,其次是现在。

    文章目录
    • 前言
    • 安装 Nginx
      • 导入 Nginx 官方签名密钥
      • 添加 Nginx 官方 APT 存储库
      • 设置存储库优先级(Pinning)
      • 更新软件包列表并安装 Nginx
    • 安装php
      • 添加 PHP 官方 PPA
      • 安装 PHP 及相关扩展
      • 配置 PHP-FPM 与 Nginx 配合
    • 使用 Docker Compose 安装 MySQL
      • 安装 Docker 和 Docker Compose
      • 创建 docker-compose.yml 文件
      • 启动 MySQL 容器
      • 连接 MySQL 容器
    • 安装wordpress
      • 下载 WordPress 文件
      • 设置 WordPress 目录权限
      • 配置 Nginx
      • 访问 WordPress 安装界面
    友情连接
    猫饭范文泉博客迎風别葉CODING手艺人ScarSu
    归档
    • 2025 年 5 月
    • 2025 年 4 月
    • 2025 年 3 月
    • 2024 年 12 月
    • 2024 年 10 月
    • 2024 年 5 月
    • 2023 年 2 月
    • 2022 年 11 月
    • 2022 年 3 月
    • 2021 年 12 月
    • 2021 年 8 月
    • 2021 年 5 月
    • 2021 年 4 月
    • 2021 年 3 月
    • 2020 年 12 月
    • 2020 年 11 月
    • 2020 年 8 月
    • 2020 年 5 月
    • 2019 年 12 月
    • 2019 年 3 月

    吉ICP备18007356号

    吉公网安备22020302000184号

    Theme Kratos Made By Seaton Jiang

    COPYRIGHT © 2025 秋雨De blog ALL RIGHTS RESERVED