在 Ubuntu 服务器上使用宝塔面板搭建博客

📌 介绍

在本教程中,我们将介绍如何在 Ubuntu 服务器 上安装 宝塔面板,并使用 Nginx + PHP + MySQL 搭建一个博客(如 WordPress)。

主要步骤包括:

  1. 安装宝塔面板
  2. 配置 Nginx + PHP + MySQL
  3. 绑定域名与 SSL 证书
  4. 安装 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
  • 输入 账号 & 密码 登录

安装必备环境:

  1. 进入 “软件商店”
  2. 安装以下软件:
    • Nginx(Web 服务器)
    • MySQL(数据库)
    • PHP 8.0+(用于运行 WordPress)
    • phpMyAdmin(数据库管理工具)

配置 PHP:

  • 上传限制:128M
  • 执行时间:300 秒
  • 启用 fileinfo 扩展

📌 3. 配置域名解析

在域名管理平台(如 Cloudflare、阿里云、腾讯云)中添加 DNS 解析:

  1. A 记录解析到服务器 IP
    • 主机记录@
    • 记录值:服务器 IP
  2. 添加 www 解析
    • 主机记录www
    • 记录值:服务器 IP

测试解析是否生效:

ping example.com

如果返回 服务器 IP,说明解析成功。


📌 4. 配置反向代理隐藏宝塔面板端口

配置反向代理可以参考 Nginx 上安装 SSL 证书并启用 HTTPS 访问 。如果已经在宝塔上安装了Nginx就不要安装单独的 Nginx,不然两个冲突了确实挺麻烦的。

  1. 进入宝塔面板设置绑定域名
  2. 添加一个域名,例如 panel.example.com
  3. 进入 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
}
  1. 重启 Nginx,然后你可以通过 https://域名 访问宝塔面板,而无需暴露端口 端口

PS:上面的配置是通过在命令行输入 bt,然后开启/关闭【80、443】端口访问面板设置时自动生成的。生成的配置文件的路径是 /www/server/panel/vhost/nginx
在这里插入图片描述


📌 5. 在宝塔面板中添加网站

  1. 进入 “网站管理”点击 “添加站点”
  2. 填写信息:
    • 域名example.com
    • 根目录/www/wwwroot/example.com
    • 数据库MySQL
    • PHP 版本PHP 8.0+
  3. 点击 “创建”

修改 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)

  1. 进入 “网站管理”选择 example.com
  2. 点击 “SSL”申请 Let’s Encrypt 证书
  3. 自动续期并启用 HTTPS 强制跳转

加入阿里云的 DNS解析:
在这里插入图片描述

获取 key
在这里插入图片描述

申请证书:
在这里插入图片描述
开启自动续签:
在这里插入图片描述


📌 8. 创建 WordPress 数据库

  1. 进入宝塔面板数据库管理创建数据库
    • 数据库名wordpress
    • 用户名wp_user
    • 密码强密码
  2. 点击 “创建”

📌 9. 配置 WordPress

  1. 访问 https://example.com
  2. 选择 语言
  3. 填写数据库信息:
    • 数据库名wordpress
    • 用户名wp_user
    • 密码你设置的密码
    • 数据库主机localhost
  4. 点击提交安装 WordPress
  5. 创建管理员账号
    • 用户名admin
    • 密码强密码
    • 邮箱你的邮箱

在这里插入图片描述


📌 10. 配置 WordPress 主题和插件

🔹 进入 WordPress 后台https://example.com/wp-admin):

  1. 安装主题
    • 外观主题选择你喜欢的主题
  2. 安装推荐插件
    • Yoast SEO(优化 SEO)
    • WP Super Cache(加速网站)
    • Classic Editor(经典编辑器)

🎉 结论

✅ 你已经成功:

  • 安装宝塔面板
  • 配置 Nginx + MySQL + PHP
  • 启用 HTTPS 并配置 SSL 证书
  • 成功安装 WordPress
  • 创建了属于自己的博客网站!

📌 现在,你可以访问 https://example.com 开始写博客了!🚀

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

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

相关文章

PTA7-13 统计工龄

题目描述 给定公司 n 名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。 输入格式: 输入首先给出正整数 n(≤105),即员工总人数;随后给出 n 个整数,即每个员工的工龄,范围在 [0, 50]。…

【 <一> 炼丹初探:JavaWeb 的起源与基础】之 Servlet 3.0 新特性:异步处理与注解配置

<前文回顾> 点击此处查看 合集 https://blog.csdn.net/foyodesigner/category_12907601.html?fromshareblogcolumn&sharetypeblogcolumn&sharerId12907601&sharereferPC&sharesourceFoyoDesigner&sharefromfrom_link <今日更新> 一、Servle…

电子电气架构 --- 汽车电子硬件架构

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 人生是一场骗局,最大的任务根本不是什么买车买房,也不是及时行乐,这就是欲望,不是理想,是把自己对生命的希望寄托在外物上,正确的做法应该是内…

使用 Homebrew 安装 OpenJDK 并配置环境变量

在 macOS 上使用 Homebrew 安装 OpenJDK 是一种简单而高效的方式。本文将使用 Homebrew 安装 OpenJDK&#xff0c;并设置环境变量以便 Java 能够正确运行。 1. 安装 Homebrew 首先&#xff0c;确保你的 macOS 系统已经安装了 Homebrew。如果没有安装&#xff0c;可以通过以下…

Java集合简单理解

Java 的集合框架&#xff08;Java Collections Framework, JCF&#xff09;是 Java 中用于存储和操作数据结构的核心库&#xff0c;提供了丰富的接口和实现类&#xff0c;用于处理不同类型的集合数据。以下是详细的介绍&#xff1a; 一、集合框架的体系结构 Java 集合主要分为…

群体智能优化算法-旗鱼优化算法 (Sailfish Optimizer, SFO,含Matlab源代码)

摘要 旗鱼优化算法&#xff08;Sailfish Optimizer, SFO&#xff09;是一种模拟旗鱼&#xff08;Sailfish&#xff09;和沙丁鱼&#xff08;Sardine&#xff09;之间捕食关系的新型元启发式算法。通过在搜索过程中模拟旗鱼对沙丁鱼的捕食行为&#xff0c;以及沙丁鱼群的逃逸与…

【C语言】编译和链接详解

hi&#xff0c;各位&#xff0c;让我们开启今日份博客~ 小编个人主页点这里~ 目录 一、翻译环境和运行环境1、翻译环境1.1预处理&#xff08;预编译&#xff09;1.2编译1.2.1词法分析1.2.2语法分析1.2.3语义分析 1.3汇编1.4链接 2.运行环境 一、翻译环境和运行环境 在ANSI C…

VIC模型率定验证

在气候变化问题日益严重的今天&#xff0c;水文模型在防洪规划&#xff0c;未来预测等方面发挥着不可替代的重要作用。目前&#xff0c;无论是工程实践或是科学研究中都存在很多著名的水文模型如SWAT/HSPF/HEC-HMS等。虽然&#xff0c;这些软件有各自的优点&#xff1b;但是&am…

【AWS入门】AWS云计算简介

【AWS入门】AWS云计算简介 A Brief Introduction to AWS Cloud Computing By JacksonML 什么是云计算&#xff1f;云计算能干什么&#xff1f;我们如何利用云计算&#xff1f;云计算如何实现&#xff1f; 带着一系列问题&#xff0c;我将做一个普通布道者&#xff0c;引领广…

Flutter_学习记录_ ImagePicker拍照、录制视频、相册选择照片和视频、上传文件

插件地址&#xff1a;https://pub.dev/packages/image_picker 添加插件 添加配置 android无需配置开箱即用&#xff0c;ios还需要配置info.plist <key>NSPhotoLibraryUsageDescription</key> <string>应用需要访问相册读取文件</string> <key>N…

蓝桥与力扣刷题(蓝桥 星期计算)

题目&#xff1a;已知今天是星期六&#xff0c;请问 20^22 天后是星期几? 注意用数字 1 到 7 表示星期一到星期日。 本题为填空题&#xff0c;只需要算出结果后&#xff0c;在代码中使用输出语句将所填结果输出即可。 解题思路&#xff0b;代码&#xff1a; 代码&#xff1…

向量数据库原理及选型

向量数据库 什么是向量什么是向量数据库原理应用场景 向量数据库的选型主流向量数据库介绍向量数据库对比主流向量数据库对比表 选型建议 什么是向量 向量是一组有序的数值&#xff0c;表示在多维空间中的位置或方向。向量通常用一个列或行的数字集合来表示&#xff0c;这些数…

以实现生产制造、科技研发、人居生活等一种或多种复合功能的智慧油站开源了

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本。用…

小程序网络大文件缓存方案

分享一个小程序网络大图加载慢的解决方案 用到的相关api getSavedFileList 获取已保存的文件列表&#xff1b;getStorageSync 获取本地缓存&#xff1b;downloadFile 下载网络图片&#xff1b;saveFile 保存文件到本地&#xff1b;setStorage 将数据储存到小程序本地缓存&…

软考系统架构师 — 3 操作系统

目录 3.1 考点分析 3.1 操作系统概述 3.1.1 操作系统的功能 3.1.2 操作系统的分类 3.1.3 嵌入式操作系统主要特点 3.2 进程 3.2.1 进程的组成和状态 3.2.2 前趋图与进程资源图&#xff08;重点&#xff09; 3.2.3 进程同步与互斥 3.2.4 进程调度 3.2.5 死锁 3.3 线…

PE,ELF,COFF

本文来自 (1)腾讯元宝 (2)程序员的自我修养 PE&#xff08;Portable Executable&#xff09;是一种文件格式&#xff0c;主要用于Windows操作系统中的可执行文件&#xff08;如.exe、.dll、.sys等&#xff09;。PE格式是Windows操作系统中标准的可执行文件格式&#xff0c;由…

MySQL 在 CentOS 7 上安装的步骤指南

目录 1. 卸载不需要的环境 2. 获取 MySQL YUM 仓库 3. 安装 MySQL 4. 启动 MySQL 服务 5. 获取临时 Root 密码 6. 登录 MySQL 7. 更改 Root 密码 8. 设置 MySQL 开机自启动 9. 配置 MySQL 编码 10. 重启 MySQL 配置生效 11. 常见问题解决 1. 卸载不需要的环境 如果…

C++初阶——类和对象(三) 构造函数、析构函数

C初阶——类和对象&#xff08;三&#xff09; 上期内容&#xff0c;我们围绕类对象模型的大小计算&#xff0c;成员存储方式&#xff0c;this指针&#xff0c;以及C实现栈和C语言的比较&#xff0c;进一步认识了C的封装特性。本期内容&#xff0c;我们开始介绍类的默认成员函…

【NLP】 5. Word Analogy Task(词类比任务)与 Intrinsic Metric(内在度量)

Word Analogy Task&#xff08;词类比任务&#xff09; 定义&#xff1a;Word Analogy Task 是用于评估词向量质量的内在指标&#xff08;Intrinsic Metric&#xff09;。该任务基于这样的假设&#xff1a;如果词向量能够捕捉单词之间的语义关系&#xff0c;那么这些关系应该能…