ubuntu

如何在Ubuntu上使用LNMP搭建博客系统

小樊
56
2025-10-01 12:16:15
栏目: 智能运维

一、准备工作

在Ubuntu上搭建LNMP博客系统前,需确保系统已更新至最新版本,并准备好博客程序(如WordPress)。以下是详细步骤:

二、安装与配置LNMP组件

1. 更新系统包

运行以下命令更新软件包列表及已安装的包:

sudo apt update && sudo apt upgrade -y

2. 安装Nginx(Web服务器)

Nginx作为轻量高性能的Web服务器,是LNMP的核心组件之一。安装命令:

sudo apt install nginx -y

安装完成后,启动Nginx并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

验证Nginx是否运行:浏览器访问服务器IP地址,若看到Nginx默认欢迎页面,则说明安装成功。

3. 安装MySQL/MariaDB(数据库服务器)

MySQL/MariaDB用于存储博客数据(如文章、用户信息)。以MariaDB为例,安装命令:

sudo apt install mariadb-server mariadb-client -y

启动MariaDB并设置开机自启:

sudo systemctl start mariadb
sudo systemctl enable mariadb

运行安全脚本提升数据库安全性(设置root密码、删除匿名用户、禁止远程root登录等):

sudo mysql_secure_installation

按照提示完成配置(如设置root密码、移除测试数据库等)。

4. 安装PHP(服务器端脚本语言)

PHP是博客系统的核心脚本语言,需安装PHP核心及常用扩展(如MySQL连接、GD库等)。安装命令:

sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y

启动PHP-FPM(FastCGI进程管理器)并设置开机自启:

sudo systemctl start php8.2-fpm  # 根据实际PHP版本调整(如php8.1-fpm)
sudo systemctl enable php8.2-fpm

5. 配置Nginx支持PHP

编辑Nginx默认站点配置文件(/etc/nginx/sites-available/default),在server块中添加PHP处理逻辑:

location ~ \.php$ {
    include snippets/fastcgi-php.conf;  # 引入FastCGI配置
    fastcgi_pass unix:/run/php/php8.2-fpm.sock;  # 根据PHP版本调整sock路径
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  # 传递脚本路径
    include fastcgi_params;  # 包含通用FastCGI参数
}

保存文件后,测试Nginx配置语法是否正确:

sudo nginx -t

若无错误,重新加载Nginx使配置生效:

sudo systemctl reload nginx

6. 验证LNMP环境

创建PHP测试文件(/var/www/html/info.php),内容如下:

<?php phpinfo(); ?>

浏览器访问http://服务器IP/info.php,若看到PHP信息页面,则说明LNMP环境搭建成功。

三、部署WordPress博客系统

WordPress是基于PHP+MySQL的开源博客系统,以下是部署步骤:

1. 下载并解压WordPress

访问WordPress官网(https://wordpress.org/download/)下载最新版本,或通过命令行下载:

cd /var/www/html
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz
sudo mv wordpress/* .  # 将WordPress文件移动至网站根目录
sudo rm -rf wordpress latest.tar.gz  # 删除临时文件

2. 创建WordPress数据库

登录MySQL/MariaDB,创建专用数据库及用户:

sudo mysql -u root -p

在MySQL shell中执行以下命令(替换blogbloguseryourpassword为自定义值):

CREATE DATABASE blog;  -- 创建数据库
CREATE USER 'bloguser'@'localhost' IDENTIFIED BY 'yourpassword';  -- 创建用户
GRANT ALL PRIVILEGES ON blog.* TO 'bloguser'@'localhost';  -- 授权用户对数据库的所有权限
FLUSH PRIVILEGES;  -- 刷新权限
EXIT;  -- 退出MySQL

3. 配置WordPress

编辑WordPress配置文件(/var/www/html/wp-config.php),修改数据库连接信息:

define('DB_NAME', 'blog');  // 数据库名
define('DB_USER', 'bloguser');  // 数据库用户
define('DB_PASSWORD', 'yourpassword');  // 数据库密码
define('DB_HOST', 'localhost');  // 数据库主机(本地为localhost)

保存文件后,设置网站根目录权限(确保Nginx用户www-data可读写):

sudo chown -R www-data:www-data /var/www/html
sudo find /var/www/html -type d -exec chmod 755 {} \;
sudo find /var/www/html -type f -exec chmod 644 {} \;

4. 完成WordPress安装

浏览器访问http://服务器IP,按照WordPress安装向导填写网站标题、管理员用户名/密码、邮箱等信息,点击“安装WordPress”。安装完成后,使用管理员账号登录后台(http://服务器IP/wp-admin),即可开始配置博客(如选择主题、安装插件、发布文章等)。

四、安全优化(可选但推荐)

1. 配置SSL证书(免费)

使用Let’s Encrypt为网站添加HTTPS加密,提升安全性:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com  # 替换为你的域名

按照提示完成证书申请,Certbot会自动配置Nginx支持HTTPS。

2. 配置防火墙

允许HTTP(80端口)、HTTPS(443端口)流量通过UFW防火墙:

sudo ufw allow 'Nginx Full'
sudo ufw enable  # 启用防火墙

通过以上步骤,即可在Ubuntu上成功搭建LNMP博客系统。后续可根据需求安装主题、插件(如Yoast SEO、Akismet)或进行性能优化(如缓存、CDN)。

0
看了该问题的人还看了