通过树莓派上搭建WordPress博客网站,并内外通透远程访问【无公网IP内网穿透】

虎头金猫主页

在强者的眼中,没有最好,只有更好。我们是移动开发领域的优质创作者,同时也是阿里云专家博主。 ✨ 关注我们的主页,探索iOS开发的无限可能!
🔥我们与您分享最新的技术洞察和实战经验,助您在移动应用开发领域取得成功。
📌欢迎访问我们的微信公众号:虎头金猫,获取更多精彩内容、实用技巧、行业资讯等。您关注的是我们前进的动力!
💼我们还担任阿里云专家博主的角色,为您提供更深入的技术指导和解答疑点。 🌟期待与您一起在移动开发的世界中,不断进步和创造!
🙏感谢您对我们的支持和关注!请继续关注我们的主页,获取更多精彩内容!

文章目录

  • 概述
  • 安装 PHP
  • 安装MySQL数据库
  • 安装 Wordpress
  • 设置您的 WordPress 数据库
    • 设置 MySQL/MariaDB
    • 创建 WordPress 数据库
  • WordPress configuration
  • 将WordPress站点发布到公网
    • 安装相对URL插件
    • 修改config.php配置
  • 支持好友链接样式
  • 定制主题

概述

在这里插入图片描述

在本次教程里,我们将在树莓派上搭建一个Wordpress博客站点,开始博客时代,记录生活点滴。同时做内网穿透将博客发布上线,让互联网用户都可以访问到,无需公网ip,也无需购买云服务器,简单快速实现。

安装 PHP

  • 更新到最新仓库
sudo apt-get update -y
  • 安装 apache2 php
sudo apt-get install apache2 php  -y
  • 重启 apache2 服务
sudo service apache2 restart

安装MySQL数据库

sudo apt-get install mariadb-server php-mysql -y
sudo service apache2 restart

安装 Wordpress

cd /var/www/html/
  • 删除旧静态站点内容
sudo rm -rf *
  • 下载最新的wordpresss压缩包
sudo wget http://wordpress.org/latest.tar.gz
  • 解压
sudo tar xzf latest.tar.gz
sudo mv wordpress/* .
sudo rm -rf wordpress latest.tar.gz
  • 配置目录权限
sudo chown -R www-data: .

设置您的 WordPress 数据库

设置 MySQL/MariaDB

sudo mysql_secure_installation
  • 此时系统会询问你:Enter current password for root (enter for none): , 按回车(enter) 键,因为第一次登陆是没有密码的。

  • 然后会询问你: Set root password? —— 按 Y ,进行root帐号的密码设置

  • 此时,会提示 New password ,在此输入你的MySQL密码重要:请牢记这个密码,输入完成按回车,会提示re-enter new password此时再重复输入密码,回车即可。

  • 然后,询问你 Remove anonymous users ,按 Y

  • 然后,询问你 Disallow root login remotely ,按 Y

  • 然后,询问你 Remove test database and access to it ,按 Y

  • 然后,询问你 Reload privilege tables now ,按 Y

  • 最后,您将看到消息 All done! 和 Thanks for using MariaDB! 。表示已经设置完成了。

创建 WordPress 数据库

sudo mysql -uroot -p
  • 输入您创建的 root 密码。
create database wordpress;
  • 现在将数据库权限授予 root 用户。**注意:**您需要在 IDENTIFIED BY 后输入您自己的密码。
GRANT ALL PRIVILEGES ON wordpress.* TO 'root'@'localhost' IDENTIFIED BY 'YOURPASSWORD';

**重要提示:**将上面的 YOURPASSWORD 更改为您的密码。

  • 为了使更改生效,您需要刷新数据库权限:
FLUSH PRIVILEGES;
  • 退出 MariaDB :
exit

重新启动树莓派

sudo reboot

WordPress configuration

  • 在您的 Pi 上打开 Web 浏览器并转到 http://localhost,您应该会看到一个 WordPress 页面,要求选择您的语言。

20221117162456

  • 选择您的语言,然后单击 Continue 按钮。

您将看到 WordPress 欢迎屏幕

20221117162503

  • 点击 现在就开始! 按钮。

  • 现在填写网站基本信息如下:

Database Name:      wordpress
User Name:          root
Password:           <YOUR PASSWORD>
Database Host:      localhost
Table Prefix:       wp_
  • 单击 提交 继续。

  • 单击运行安装程序按钮。

现在你越来越近了!

20221117162526

填写信息:为您的站点命名,创建用户名和密码,然后输入您的电子邮件地址。点击 安装 WordPress 按钮,然后使用您刚刚创建的帐户登录。

现在您已登录并设置了站点,您可以通过访问 http://localhost/wp-admin 来查看该网站。

登录管理后台:

20221117162534

将WordPress站点发布到公网

我们用cpolar将WordPress发布到公网前,通常需要做两件事:

安装相对URL插件

您必须确保WordPress发布为相对URL。
您可以通过安装以下插件之一来完成此操作

  • https://github.com/optimizamx/odt-relative-urls
  • http://wordpress.org/plugins/relative-url/
  • http://wordpress.org/plugins/root-relative-urls/

本例中,我们安装Relative URL插件:

  • 登录WordPress仪表盘–>插件–>安装插件

20221117162545

  • 在关键词搜索栏输入Relative URL 回车

20221117162554

  • 找到插件后点击现在安装按钮
  • 当安装成功后,点击启用按钮,激活插件。

修改config.php配置

您必须确保Wordpress了解它是为了通过隧道主机名提供服务。 您可以通过修改wp-config.php来配置Wordpress以包含以下行:

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
  • 修改wp-config.php文件
sudo nano /var/www/html/wp-config.php

配置好以后如图:

20221117162603

然后我们就可以将改博客网站发布上线,通过cpolar内网穿透,创建安全隧道映射本地端口,让公网用户也可以正常访问到我们在本地树莓派上搭建的博客网站。

cpolar官网:https://www.cpolar.com/

详细可以参考这篇文章教程:在树莓派上搭建Web站点

现在,我们的博客站点可以被公网正常访问啦!让我们看看效果:

20221117162611

支持好友链接样式

建议您更改永久链接设置以使您的 URL 更友好。

为此,请登录 WordPress 并转到仪表盘

转到设置,然后转到固定链接

选择文章名选项,然后单击保存更改

20221117162618

您需要启用 Apache 的重写模块:

sudo a2enmod rewrite

您还需要告诉为该站点提供服务的虚拟主机允许覆盖请求。

  • 编辑虚拟主机的 Apache 配置文件:
sudo nano /etc/apache2/sites-available/000-default.conf
  • 在第 1 行之后添加以下几行。
<Directory "/var/www/html">AllowOverride All
</Directory>
  • 确保它在 <VirtualHost *:80> 中,如下所示:
<VirtualHost *:80><Directory "/var/www/html">AllowOverride All</Directory>...
  • 保存文件并退出。

  • 重新启动Apache.

sudo service apache2 restart

定制主题

WordPress 是非常可定制的。通过在页面顶部的 WordPress 横幅中单击您的站点名称(当您登录时),您将被带到仪表板。从那里,您可以更改主题、添加页面和帖子、编辑菜单、添加插件等等。这只是在 Raspberry Pi 的 Web 服务器上设置一些有趣的东西的品尝器。

下面,我们更换一个主题试试。

  • WordPress仪表盘–>外观–>主题

20221117162631

  • 点击热门,选择一个自己喜欢的主题,点击安装按钮

20221117162639

  • 主题安装成功后,点击启用按钮。

  • 让我们重新打开站点,看一下效果:

20221117162648

现在,您的站点已经建好了,您可以进一步体验更多的主题,慢慢探索吧。
器上设置一些有趣的东西的品尝器。
在这里插入图片描述

转载自cpolar极点云的文章:在树莓派上搭建WordPress博客网站,并内网穿透发布到公网

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

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

相关文章

GPT-4一纸重洗:从97.6%降至2.4%的巨大挑战

斯坦福大学和加州大学伯克利分校合作进行的一项 “How Is ChatGPTs Behavior Changing Over Time?” 研究表明&#xff0c;随着时间的推移&#xff0c;GPT-4 的响应能力非但没有提高&#xff0c;反而随着语言模型的进一步更新而变得更糟糕。 研究小组评估了 2023 年 3 月和 20…

第二篇:基础窗口部件 QWidget

基础窗口部件 QWidget QWidget 类是所有用户界面对象的基类&#xff0c;因此被称为基础窗口部件。QWidget 继承自 QObject 类和QPaintDevice 类&#xff0c;其中 QObject 类是所有支持 Qt 对象模型&#xff08;Qt Object Model&#xff09;的对象的基类&#xff0c;QPaintDevi…

springboot+vue实现的智慧学校云平台源码

智慧校园源码 智慧班牌云平台源码 系统架构&#xff1a;Javavue2springbootMySQL elmentuiQuartzjpajwt 智慧校园电子班牌云平台是出于校园考勤管理以及班级校园信息展示为目的的管理系统&#xff0c;电子班牌系统主要用于中小学教育的综合管理平台&#xff0c;融合了多媒体技…

VMwar安装Centos7保姆级教程

下载文件 首先我们先下载Centos7的官方镜像和VM虚拟机软件 下面是百度云盘的下载链接 链接&#xff1a;https://pan.baidu.com/s/1aF55_F9IK4pFB45d5vHBmg?pwd87vc 提取码&#xff1a;87vc –来自百度网盘超级会员V1的分享 安装虚拟机 首先我们先把VMware16.1.0.rar文件解压…

Hugging News #0821: 新的里程碑:一百万个代码仓库!

每一周&#xff0c;我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新&#xff0c;包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等&#xff0c;我们将其称之为「Hugging News」。本期 Hugging News 有哪些有趣的消息&#xff0…

Flink的常用算子以及实例

1.map 特性&#xff1a;接收一个数据&#xff0c;经过处理之后&#xff0c;就返回一个数据 1.1. 源码分析 我们来看看map的源码 map需要接收一个MapFunction<T,R>的对象&#xff0c;其中泛型T表示传入的数据类型&#xff0c;R表示经过处理之后输出的数据类型我们继续往…

华为数通方向HCIP-DataCom H12-821题库(单选题:01-20)

第01题 下面关于OSPF邻居关系和邻接关系描述正确的是 A、邻接关系由 OSPF的 DD 报文维护 B、OSPF 路由器在交换 Hello 报文之前必须建立邻接关系 C、邻居关系是从邻接关系中选出的为了交换路由信息而形成的关系 D、并非所有的邻居关系都可以成为邻接关系 答案&#xff1a;D 解析…

JS逆向-某招聘平台token

前言 本文是该专栏的第56篇,后面会持续分享python爬虫干货知识,记得关注。 通常情况下,JS调试相对方便,只需要chrome或者一些抓包工具,扩展插件,就可以顺利完成逆向分析。目前加密参数的常用逆向方式大致可分为以下几种,一种是根据源码的生成逻辑还原加密代码,一种是补…

C语言和JavaScript中的默认排序行为对比

前言 今天在js里使用sort时遇见了一个不理解的现象 即使用sort默认排序后 9 从排序前的第一位被排到了最后一位.一开始我对js sort的理解和c一样&#xff0c;然后通过查阅后发现并不是这样. 正文 排序是一项常见而重要的操作。不同的编程语言提供了不同的排序函数&#xf…

期权就是股指期货吗,哪个好做一点?

近年来&#xff0c;场内ETF期权产品不断扩大&#xff0c;越来越多的投资者有投资期权的想法。当我们看到期权时&#xff0c;我们会不知不觉地想到期货&#xff0c;虽然期货与期权只有一个字的区别&#xff0c;但实际上有很大的不同&#xff0c;那么期权就是股指期货吗&#xff…

Java【手撕双指针】LeetCode 1089. “复写零“, 图文详解思路分析 + 代码

文章目录 前言一、复写零1, 题目2, 思路分析2.1, 从左往右 or 从右往左2.2, 找到最后一个保留的数 3, 代码展示 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: &#x1f4d5; JavaSE基础: 基础语法, 类和对象, 封装继承多态, 接口, 综合小练习图书管…

【SpringCloud】Gateway使用

文章目录 概述阻塞式处理模型和非阻塞处理模型概念阻塞式处理模型 三大核心概念 工作流程使用POMYML启动类配置路由通过编码进行配置动态路由常用的Route Predicate自定义全局过滤器自定义filter 官网 https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.2.1…

Swift 周报 第三十五期

文章目录 前言新闻和社区五天市值蒸发 2000 亿美元&#xff0c;苹果公司怎么了&#xff1f;在你的 App 中帮助顾客解决账单问题需要声明原因的 API 列表现已推出 提案通过的提案正在审查的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swift 编辑组整理周报的第三十五…

【李宏毅机器学习】注意力机制

输出 我们会遇到不同的任务&#xff0c;针对输出的不一样&#xff0c;我们对任务进行划分 给多少输出多少 给一堆向量&#xff0c;输出一个label&#xff0c;比如说情感分析 还有一种任务是由机器决定的要输出多少个label&#xff0c;seq2seq的任务就是这种&#xff0c;翻译也…

FPGA_学习_17_IP核_ROM(无延迟-立即输出)

由于项目中关于厂商提供的温度-偏压曲线数据已经被同事放在ROM表了&#xff0c;我这边可用直接调用。 今天在仿真的时候&#xff0c;发现他的ROM表用的IP核是及时输出的&#xff0c;就是你地址给进去&#xff0c;对应地址的ROM数据就立马输出&#xff0c;没有延迟。 我打开他的…

Android开发基础知识总结(一)初识安卓Android Studio

一.基础理论知识 1.Linux相当于是地基。 MIUI&#xff0c;EMUI等操作系统&#xff0c;是基于安卓的改版——且裁掉了一部分Google的服务。 &#xff08;鸿蒙虽然是改版&#xff0c;但和安卓的架构基本上一致&#xff09; 2.Kotlin和Java都是JVM语言&#xff0c;必须先复习好…

【三维重建】【深度学习】NeuS代码Pytorch实现--测试阶段代码解析(下)

【三维重建】【深度学习】NeuS代码Pytorch实现–测试阶段代码解析(下) 论文提出了一种新颖的神经表面重建方法&#xff0c;称为NeuS&#xff0c;用于从2D图像输入以高保真度重建对象和场景。在NeuS中建议将曲面表示为有符号距离函数(SDF)的零级集&#xff0c;并开发一种新的体绘…

3D医学教学虚拟仿真系统:身临其境感受人体结构和功能

3D医学教学虚拟仿真系统是一种基于虚拟现实技术的教学工具&#xff0c;它可以帮助学生更好地理解和掌握医学知识。这种课件通常包括人体解剖学、生理学、病理学等方面的教学内容&#xff0c;通过三维立体的图像和动画展示&#xff0c;让学生更加直观地了解人体结构和功能。 与传…

今天七夕,群友让我帮忙给他分配一个对象,于是我。。。

今天七夕&#xff0c;群友让我帮忙给他分配一个对象&#xff0c;于是我只好尝试给他分配对象了&#xff1a; CGirlFrined *pGF new CGirlFrined("大屌萌妹");int nRet (群友).SetGirlFriend(pGF);if (nRet ! 0) {alert("分配失败&#xff01;"); }后来觉…

交换机生成树STP

生成树协议&#xff08;spanning-tree-protocol,stp&#xff09;&#xff1a;在具有物理环路的交换机网络上生成没有回路的逻辑网络的方法&#xff0c;生成树协议使用生成树算法&#xff0c;在一个具有冗余路径的容错网络中计算出一个无环路的路径&#xff0c;使一部分端口处于…