一、准备工作
在开始搭建前,请确保你的Ubuntu系统(如20.04/22.04 LTS)已更新至最新版本,并拥有root或sudo权限。同时,准备好一个域名(可选,但推荐)用于后续绑定。
二、安装LNMP组件
通过以下命令安装Nginx,并启动服务及开机自启:
sudo apt update && sudo apt upgrade -y
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
安装完成后,在浏览器访问服务器IP地址,若看到Nginx默认欢迎页面,则说明安装成功。
选择MySQL或MariaDB作为数据库(此处以MySQL为例):
sudo apt install mysql-server -y
安装过程中会提示设置root用户密码,请务必记住该密码。安装完成后,运行安全脚本强化数据库安全性:
sudo mysql_secure_installation
按照提示操作(如设置root密码、移除匿名用户、禁止root远程登录等)。
LNMP中的PHP需安装php-fpm
(FastCGI进程管理器)及php-mysql
(MySQL数据库扩展),以支持WordPress等博客系统的需求:
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml -y
安装完成后,启动PHP-FPM及开机自启:
sudo systemctl start php7.4-fpm # 根据实际PHP版本调整(如Ubuntu 22.04默认为php8.1-fpm)
sudo systemctl enable php7.4-fpm
三、配置Nginx支持PHP
编辑Nginx的默认站点配置文件(若使用自定义域名,可将default
替换为your_domain
):
sudo nano /etc/nginx/sites-available/default
在server
块中,确保以下配置正确(重点修改root
路径和location ~ \.php$
部分):
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html; # WordPress安装目录
index index.php index.html index.htm;
server_name _; # 若使用域名,替换为你的域名(如example.com)
location / {
try_files $uri $uri/ /index.php?$args; # 支持WordPress URL重写
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据PHP版本调整sock路径
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all; # 禁止访问.htaccess文件
}
}
保存并退出编辑器后,测试Nginx配置语法是否正确:
sudo nginx -t
若无错误,重新加载Nginx以应用更改:
sudo systemctl reload nginx
四、部署WordPress(或其他博客系统)
进入Web根目录,下载WordPress最新版本并解压:
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 # 删除压缩包及临时目录
设置目录权限,确保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 {} \;
登录MySQL,创建专用数据库和用户(避免使用root账户):
sudo mysql -u root -p
在MySQL shell中执行以下命令(将blog_db
、blog_user
、your_password
替换为实际名称和密码):
CREATE DATABASE blog_db;
CREATE USER 'blog_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON blog_db.* TO 'blog_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
编辑WordPress配置文件wp-config.php
,修改数据库连接信息:
sudo nano /var/www/html/wp-config.php
找到以下行并替换为你的数据库信息:
define('DB_NAME', 'blog_db'); // 数据库名
define('DB_USER', 'blog_user'); // 数据库用户
define('DB_PASSWORD', 'your_password'); // 数据库密码
define('DB_HOST', 'localhost'); // 数据库主机(默认localhost)
保存并退出编辑器。
五、完成WordPress安装
在浏览器中访问服务器IP地址或域名(如http://your_domain.com
),将进入WordPress安装向导。按照提示依次完成以下步骤:
http://your_domain.com/wp-admin
),即可开始配置博客(如选择主题、安装插件、发布文章等)。六、安全优化(可选但推荐)
使用Let’s Encrypt免费获取SSL证书,提升站点安全性:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your_domain.com -d www.your_domain.com # 替换为你的域名
按照提示完成证书安装,Certbot会自动配置Nginx支持HTTPS。
允许HTTP(80端口)和HTTPS(443端口)流量,拒绝其他不必要的端口:
sudo ufw allow 'Nginx Full'
sudo ufw enable
检查防火墙状态:
sudo ufw status
通过以上步骤,你已成功在Ubuntu上利用LNMP搭建了个人博客。后续可根据需求安装插件(如Yoast SEO、Akismet)、更换主题(如Astra、GeneratePress),进一步优化博客功能与外观。