Wagtail安装运行并结合内网穿透实现公网访问本地网站界面
文章目录
- 前言
- 1. 安装并运行Wagtail
- 1.1 创建并激活虚拟环境
- 2. 安装cpolar内网穿透工具
- 3. 实现Wagtail公网访问
- 4. 固定的Wagtail公网地址
正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站。
前言
Wagtail是一个用Python编写的开源CMS,建立在Django Web框架上。Wagtail 是一个基于 Django 的开源内容管理系统,拥有强大的社区和商业支持。它专注于用户体验,并为设计人员和开发人员提供精确控制。
选择wagtail的原因:
- 它能快速实现页面的表达,对于我这种对新实现的功能想要找到地方进行展示,但前端能力又不太行的同学
- 基于django 一直会对django的稳定版本进行支持
Wagtail由开发人员为开发人员构建。那么结合cpolar内网穿透可以进行公网远程访问,实现花更少的时间进行配置,而将更多的时间用于完善您的网站。本篇文章介绍如何安装运行Wagtail,并实现公网访问网站界面。
1. 安装并运行Wagtail
Wagtail 支持 Python 3.8、3.9、3.10 和 3.11。
要检查您是否有合适的 Python 3 版本,请运行以下命令:
python --version
# Or:
python3 --version
# **On Windows** (cmd.exe, with the Python Launcher for Windows):
py --version
如果上述命令均未返回版本号,或返回低于 3.8 的版本,则安装 Python 3。
1.1 创建并激活虚拟环境
按照顺序进行安装
pip install wagtail
wagtail start mysite
cd mysite
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

安装完成服务器启动后,访问http://127.0.0.1:8000/即可看到Wagtail的欢迎页面

2. 安装cpolar内网穿透工具
上面在本地成功安装了Wagtail,并局域网访问成功,下面我们安装Cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系统添加服务
sudo systemctl enable cpolar
- 启动cpolar服务
sudo systemctl start cpolar
cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

3. 实现Wagtail公网访问
点击左侧仪表盘的隧道管理——创建隧道,创建一个Wagtail的cpolar公网地址隧道
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:8000 (局域网访问的端口)
- 域名类型:免费选择随机域名
- 地区:选择China top
点击创建

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

使用上面的cpolar https公网地址在任意设备的浏览器访问,即可成功看到Wagtail的欢迎界面,这样一个公网地址且可以远程访问就创建好了,无需自己购买云服务器,即可发布到公网访问。

4. 固定的Wagtail公网地址
由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。
我一般会使用固定二级子域名,原因是希望将网址发送公网,其他人可以长期访问这个固定网址,而不需要每次重新创建隧道,它是一个固定、易记的公网地址(例如:wagtail.cpolar.cn),这样更显正式,便于交流协作。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】
注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

保留成功后复制保留成功的二级子域名的名称

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

最后,我们使用固定的公网地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了

相关文章:
Wagtail安装运行并结合内网穿透实现公网访问本地网站界面
文章目录 前言1. 安装并运行Wagtail1.1 创建并激活虚拟环境 2. 安装cpolar内网穿透工具3. 实现Wagtail公网访问4. 固定的Wagtail公网地址 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默…...
10分钟快速开始SkyWalking结合Springboot项目
10分钟快速开始SkyWalking结合Springboot项目 实习期间,公司让我去学习一下链路追踪如何集成到Springboot项目中。 为此有两个方案: 1.opentelementryjaegerprometheus opentelementry 收集器收集线上的metrics和traces,然后发送给jaeger和p…...
STM32—触摸键
目录 1 、 电路构成及原理图 2 、编写实现代码 3、代码讲解 4、烧录到开发板调试、验证代码 5、检验效果 此笔记基于朗峰 STM32F103 系列全集成开发板的记录。 1 、 电路构成及原理图 触摸键简单的了解就是一次电容的充放电过程。从原理图可以看出,触摸键 …...
python中字典(dict)原理及其操作
原理 Python中的字典(Dictionary)是一种基于哈希表(Hash Table)的实现,提供了高效的键值对(Key-Value Pair)存储和访问机制。了解字典的工作原理有助于更好地理解其性能特性以及为什么在某些情…...
.NET Core Web API实现微服务集群部署
.NET Core Web API实现微服务集群部署 在.NET Core Web API中实现微服务集群部署通常涉及多个步骤,包括服务拆分、容器化、服务注册与发现、负载均衡等。以下是一个简化的步骤指南,用于在.NET Core中构建和部署微服务集群: 服…...
网络安全与信创产业发展:构建数字时代的护城河
✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua,在这里我会分享我的知识和经验。&#x…...
外包干了3个月,技术倒退1年。。。
先说情况,大专毕业,18年通过校招进入湖南某软件公司,干了接近6年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…...
Unity发布webgl获取浏览器的URL
Unity发布webgl获取浏览器的URL Unity发布webgl之后获取浏览器的url 在unity中创建文件夹Plugins,然后添加添加文件UnityGetBrowserURL.jslib var GetUrlFunc {//获取地址栏的URLStringReturnValueFunction: function () {var returnStr window.top.location.hre…...
StarRocks实战——多维分析场景与落地实践
目录 一、OLAP 系统历史背景 1.1 历史背景与痛点 1.2 组件诉求 二、StarRocks 的特点和优势 2.1 极致的查询性能 2.2 丰富的导入方式 2.3 StarRocks 的优势特点 三、多维分析的运用场景 3.1 实时计算场景 / 家长监控中心 3.2 实时更新模型选择 3.2.1 更新模型UNIQU…...
golang 函数式编程库samber/mo使用: Result
golang 函数式编程库samber/mo使用: Result 如果您不了解samber/mo库, 请先阅读上一篇 Option , 这篇讲述结构体Result的使用 Result和Option区别 samber/mo有了Option, 为什么还有Result呢? 我们先看看定义: Opt…...
Python 实现 CHO 指标计算(济坚指数):股票技术分析的利器系列(12)
Python 实现 CHO 指标计算(济坚指数):股票技术分析的利器系列(12) 介绍算法公式 代码rolling函数介绍核心代码计算 CHO 完整代码 介绍 CHO(济坚指数)是一种在金融领域中用于衡量市场波动性和风险的指数 先…...
MySQL的SQL语句
1.MySQL连接 连接命令一般是这样写的 mysql -h$ip -P$port -u$user -p比如:mysql -h127.0.0.1 -P3306 -uroot -p -h 指定连接的主机地址;-P 指定连接端口号;-u 指定用户名 -p指定用户名密码 2.SQL分类 DDL(Data Definition Language) 数据定义语言&…...
ABAP 发送带EXCEL邮件
前言 没啥特殊需求,就是有个库龄报表用户想整邮件发送 实现 用的最简单的XLS文件作为excel附件发送出去 观察XLS文件的纯文本格式,每列之间用TAB制表符分隔,每行之间用回车符分隔 思路也比较明确,在SAP中实现这种格式…...
Linux Nginx SSL 证书配置正确,扔展示不安全
Nginx SSL 配置 首先我能够确定自己的Nginx SSL是配置正确的: 问题展示 通过浏览器访问自己域名,点击不安全后查看证书,展示的证书并不是自己所配置的证书,如下: 通过curl -vvv https://域名访问返回的证书是过期…...
算法沉淀——动态规划之子数组、子串系列(上)(leetcode真题剖析)
算法沉淀——动态规划之子数组、子串系列 01.最大子数组和02.环形子数组的最大和03.乘积最大子数组04.乘积为正数的最长子数组长度 01.最大子数组和 题目链接:https://leetcode.cn/problems/maximum-subarray/、 给你一个整数数组 nums ,请你找出一个具…...
Flutter GetX 之 暗黑模式
我们紧接上篇文章,今天继续讲解一下强大的 GetX 的另一个功能,就是 暗黑模式 ,在iOS 13开始苹果的应用慢慢的都开始适配 暗黑模式,andr。oid 也慢慢的 开始跟进,截止到目前,商店的大部分应用都已经完成了 暗…...
SQLlabs46关
看看源码 最终我们的id是放到order by后面了 如果我们直接用列去排序 ?sortusername/password username: passward 可以看到顺序是不同的,当然第一列第二列第三列也可以,基本上都是这个原理,那怎么去实现注入呢,我…...
【Android移动开发】Windows10平台安装Android Studio与人工智能算法模型部署案例
目录 一、Android Studio下载地址二、开发环境JDK三、开始安装Android Studio四、案例展示与搭建五、人工智能算法模型移动端部署案例参考 一、Android Studio下载地址 https://developer.android.google.cn/studio/install.html 电脑配置要求: 下载保存在指定文…...
【IDEA】java 项目启动偶现Kotlin 版本问题 error:Kotlin:module was
一、问题描述: error:Kotlin:module was compiled with an incompatible version of kotlin the binary version of its metadata is二、问题原因: jar包版本冲突 三、解决方式: 1、Rebuild Project(推荐☆) 重新构…...
Jmeter系列(2)目录介绍
目录 Jmeter目录介绍bin目录docsextrasliblicensesprintable_docs Jmeter目录介绍 在学习Jmeter之前,需要先对工具的目录有些了解,也会方便后续的学习 bin目录 examplesCSV目录中有CSV样例jmeter.batwindow 启动文件jmeter.shMac/linux的启动文件jmete…...
SUPER COLORIZER 数据库集成实践:MySQL管理海量图像处理任务与结果
SUPER COLORIZER 数据库集成实践:MySQL管理海量图像处理任务与结果 如果你正在管理一个需要批量处理成千上万张图片的项目,比如给老照片上色、统一调整产品图风格,或者为电商平台批量生成不同尺寸的图片,那你肯定遇到过这样的烦恼…...
华为FusionAccess桌面云实战:从零配置到高效运维的完整指南
华为FusionAccess桌面云实战:从零配置到高效运维的完整指南 当企业数字化转型进入深水区,桌面虚拟化技术正成为IT架构现代化的关键拼图。华为FusionAccess作为国产化桌面云解决方案的标杆,其独特的HDP协议优化和全栈自主可控架构,…...
nli-distilroberta-base实战教程:使用/app.py启动NLI服务并集成到Flask后端
nli-distilroberta-base实战教程:使用/app.py启动NLI服务并集成到Flask后端 1. 项目概述 自然语言推理(Natural Language Inference, NLI)是自然语言处理中的一项重要任务,用于判断两个句子之间的逻辑关系。nli-distilroberta-base是基于DistilRoBERTa…...
RVC模型C语言底层接口调用:高性能嵌入式音频处理
RVC模型C语言底层接口调用:高性能嵌入式音频处理 1. 引言 你有没有想过,那些小巧的智能音箱、专业的录音笔,或者高端的车载语音助手,它们是怎么在有限的硬件资源下,实现清晰、实时的声音转换和处理的?这背…...
从理论到实践:AI原生应用中的人机协作全解析
从理论到实践:AI原生应用中的人机协作全解析关键词:AI原生应用、人机协作、理论基础、实践案例、未来趋势 摘要:本文全面解析了AI原生应用中的人机协作,从理论基础入手,介绍了相关概念和原理,接着阐述了人机…...
OpenClaw插件开发入门:为Qwen3-32B镜像编写天气查询技能
OpenClaw插件开发入门:为Qwen3-32B镜像编写天气查询技能 1. 为什么需要自定义技能? 去年冬天,我经常需要同时查看多个城市的天气来规划差旅行程。每次手动打开天气网站、输入城市名、对比数据的过程让我不胜其烦。直到我发现OpenClaw可以通…...
【Python多解释器通信终极指南】:20年专家亲授GIL绕过术、共享内存实战与跨解释器RPC设计模式
第一章:Python多解释器通信的演进与核心挑战Python长期以来以全局解释器锁(GIL)为标志性设计,保障单解释器内线程安全,却也天然限制了多线程在CPU密集型场景下的并行能力。为突破GIL束缚,Python 3.12正式引…...
基于云平台的智能客服系统实战:架构设计与性能优化指南
最近在负责一个面向多租户的智能客服项目,从零到一踩了不少坑。传统单体架构的客服系统,一到业务高峰期就卡顿、超时,扩容更是噩梦。经过一番折腾,我们最终基于云平台构建了一套相对稳定、可扩展的解决方案。今天就把整个架构设计…...
Simulink中卷积码编码硬判决、软判决译码BPSK系统误码率性能仿真的Matlab 201...
simulink 卷积码编码硬判决软判决译码BPSK系统误码率性能仿真 Matlab2015及以上版本可以运行。最近在折腾通信系统的误码率仿真,发现Simulink搞数字通信建模是真的方便。特别是卷积码这种自带状态记忆的编码方案,用模块拖拽比纯代码实现直观多了。今天咱…...
Conda环境下的WebRTC编译与部署:从源码下载到实战避坑指南
最近在做一个实时音视频项目,需要用到 WebRTC。作为一个习惯用 Conda 管理 Python 环境的开发者,我本能地想用 conda install 来搞定一切,结果发现这条路根本走不通。预编译的二进制包要么版本不对,要么依赖冲突,尤其是…...
