📌 介绍
在本教程中,我们将介绍如何在 Ubuntu 服务器 上安装 宝塔面板,并使用 Nginx + PHP + MySQL 搭建一个博客(如 WordPress)。
主要步骤包括:
- 安装宝塔面板
- 配置 Nginx + PHP + MySQL
- 绑定域名与 SSL 证书
- 安装 WordPress 并优化
📌 1. 安装宝塔面板
宝塔官网
在 Ubuntu 服务器上执行以下命令:
# 更新系统
sudo apt update && sudo apt upgrade -y# 下载并安装宝塔面板(适用于 Ubuntu)
wget -O install.sh http://www.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
安装完成后,终端会显示 宝塔面板的访问地址、账号和密码,请妥善记录。
📌 2. 登录宝塔面板并配置环境
- 在浏览器访问
http://服务器IP:8888
- 输入 账号 & 密码 登录
安装必备环境:
- 进入 “软件商店”
- 安装以下软件:
- Nginx(Web 服务器)
- MySQL(数据库)
- PHP 8.0+(用于运行 WordPress)
- phpMyAdmin(数据库管理工具)
配置 PHP:
- 上传限制:128M
- 执行时间:300 秒
- 启用
fileinfo
扩展
📌 3. 配置域名解析
在域名管理平台(如 Cloudflare、阿里云、腾讯云)中添加 DNS 解析:
- A 记录解析到服务器 IP
- 主机记录:
@
- 记录值:服务器 IP
- 主机记录:
- 添加
www
解析- 主机记录:
www
- 记录值:服务器 IP
- 主机记录:
测试解析是否生效:
ping example.com
如果返回 服务器 IP,说明解析成功。
📌 4. 配置反向代理隐藏宝塔面板端口
配置反向代理可以参考 Nginx 上安装 SSL 证书并启用 HTTPS 访问 。如果已经在宝塔上安装了Nginx
就不要安装单独的 Nginx
,不然两个冲突了确实挺麻烦的。
- 进入宝塔面板 → 设置 → 绑定域名
- 添加一个域名,例如
panel.example.com
- 进入 Nginx 配置,添加以下反向代理:
proxy_cache_path /www/wwwroot/域名/proxy_cache_dir levels=1:2 keys_zone=主机记录(. 替换成 _)_cache:20m inactive=1d max_size=5g;server {listen 80;listen 443 ssl;listen 443 quic;http2 on;listen [::]:80;server_name 域名;index index.php index.html index.htm default.php default.htm default.html;root /www/wwwroot/域名;#CERT-APPLY-CHECK--START# 用于SSL证书申请时的文件验证相关配置 -- 请勿删除include /www/server/panel/vhost/nginx/well-known/域名.conf;#CERT-APPLY-CHECK--END#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则#error_page 404/404.html;ssl_certificate /www/server/panel/vhost/cert/域名/fullchain.pem;ssl_certificate_key /www/server/panel/vhost/cert/域名/privkey.pem;ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;ssl_prefer_server_ciphers on;ssl_session_tickets on;ssl_session_cache shared:SSL:10m;ssl_session_timeout 10m;add_header Strict-Transport-Security "max-age=31536000";add_header Alt-Svc 'quic=":443"; h3=":443"; h3-29=":443"; h3-27=":443";h3-25=":443"; h3-T050=":443"; h3-Q050=":443";h3-Q049=":443";h3-Q048=":443"; h3-Q046=":443"; h3-Q043=":443"';error_page 497 https://$host$request_uri;#SSL-END#REDIRECT START#REDIRECT END#ERROR-PAGE-START 错误页配置,可以注释、删除或修改#error_page 404 /404.html;#error_page 502 /502.html;#ERROR-PAGE-END#PHP-INFO-START PHP引用配置,可以注释或修改include enable-php-00.conf;#PHP-INFO-END#IP-RESTRICT-START 限制访问ip的配置,IP黑白名单#IP-RESTRICT-END#BASICAUTH START#BASICAUTH END#SUB_FILTER START#SUB_FILTER END#GZIP START#GZIP END#GLOBAL-CACHE START#GLOBAL-CACHE END#WEBSOCKET-SUPPORT STARTproxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $connection_upgrade;#WEBSOCKET-SUPPORT END#PROXY-CONF-STARTlocation ^~ / {auth_basic "Authorization";auth_basic_user_file /www/server/pass/域名/SNUZu.htpasswd;proxy_pass https://127.0.0.1:18395;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Real-Port $remote_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Forwarded-Host $host;proxy_set_header X-Forwarded-Port $server_port;proxy_set_header REMOTE-HOST $remote_addr;proxy_ssl_server_name on;proxy_connect_timeout 60s;proxy_send_timeout 600s;proxy_read_timeout 600s;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $connection_upgrade;}#PROXY-CONF-END#SERVER-BLOCK START#SERVER-BLOCK END#禁止访问的文件或目录location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md){return 404;}#一键申请SSL证书验证目录相关设置location /.well-known{allow all;}#禁止在证书验证目录放入敏感文件if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {return 403;}#LOG STARTaccess_log /www/wwwlogs/域名.log;error_log /www/wwwlogs/域名.error.log;#LOG END
}
- 重启 Nginx,然后你可以通过
https://域名
访问宝塔面板,而无需暴露端口端口
。
PS
:上面的配置是通过在命令行输入 bt,然后开启/关闭【80、443】端口访问面板设置时自动生成的。生成的配置文件的路径是 /www/server/panel/vhost/nginx。
📌 5. 在宝塔面板中添加网站
- 进入 “网站管理” → 点击 “添加站点”
- 填写信息:
- 域名:
example.com
- 根目录:
/www/wwwroot/example.com
- 数据库:
MySQL
- PHP 版本:
PHP 8.0+
- 域名:
- 点击 “创建”
修改 Nginx 伪静态(适用于 WordPress):
location / {try_files $uri $uri/ /index.php?$args;
}
🔹 下载并解压 WordPress (手动安装:可选)
cd /www/wwwroot/example.com
wget https://wordpress.org/latest.zip
unzip latest.zip
mv wordpress/* .
rm -rf wordpress latest.zip
chown -R www:www /www/wwwroot/example.com
chmod -R 755 /www/wwwroot/example.com
📌 6. 配置 SSL 证书(HTTPS)
- 进入 “网站管理” → 选择
example.com
- 点击 “SSL” → 申请 Let’s Encrypt 证书
- 自动续期并启用 HTTPS 强制跳转
加入阿里云的 DNS解析:
获取 key
:
申请证书:
开启自动续签:
📌 8. 创建 WordPress 数据库
- 进入宝塔面板 → 数据库管理 → 创建数据库
- 数据库名:
wordpress
- 用户名:
wp_user
- 密码:
强密码
- 数据库名:
- 点击 “创建”
📌 9. 配置 WordPress
- 访问
https://example.com
- 选择 语言
- 填写数据库信息:
- 数据库名:
wordpress
- 用户名:
wp_user
- 密码:
你设置的密码
- 数据库主机:
localhost
- 数据库名:
- 点击提交 → 安装 WordPress
- 创建管理员账号
- 用户名:
admin
- 密码:
强密码
- 邮箱:
你的邮箱
- 用户名:
📌 10. 配置 WordPress 主题和插件
🔹 进入 WordPress 后台(https://example.com/wp-admin
):
- 安装主题:
- 外观 → 主题 → 选择你喜欢的主题
- 安装推荐插件:
- Yoast SEO(优化 SEO)
- WP Super Cache(加速网站)
- Classic Editor(经典编辑器)
🎉 结论
✅ 你已经成功:
- 安装宝塔面板
- 配置 Nginx + MySQL + PHP
- 启用 HTTPS 并配置 SSL 证书
- 成功安装 WordPress
- 创建了属于自己的博客网站!
📌 现在,你可以访问 https://example.com
开始写博客了!🚀