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

972e759204e102f0f02d72f3f9debce

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

f6c9c2ba0e7fceb1cd3fee6530cd32c

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 管理界面配置即可

image-20230831171159175

3. 实现Wagtail公网访问

点击左侧仪表盘的隧道管理——创建隧道,创建一个Wagtail的cpolar公网地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:8000 (局域网访问的端口)
  • 域名类型:免费选择随机域名
  • 地区:选择China top

点击创建

image-20231117142958650

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

image-20231117143052181

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

image-20231117152345900

4. 固定的Wagtail公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。

我一般会使用固定二级子域名,原因是希望将网址发送公网,其他人可以长期访问这个固定网址,而不需要每次重新创建隧道,它是一个固定、易记的公网地址(例如:wagtail.cpolar.cn),这样更显正式,便于交流协作。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20231117152931752

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

image-20231117152958088

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

image-20231117153047768

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20231117153301193

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

image-20231117153602521

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

image-20231117153652283

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

c# 异常处理

异常类 .NET Framework 类库中的所有异常都派生于 Exception 类,异常包括系统异常和应用异常。 默认所有系统异常派生于 System.SystemException,所有的应用程序异常派生于 System.ApplicationException。 系统异常一般不可预测,比如内存堆…

RabbitMQ 面试八股题整理

前言:本文是博主网络自行收集的一些RabbitMQ相关八股文,还在准备暑期实习,后续应该会持续更新...... 参考:三天吃透RabbitMQ面试八股文_牛客网 目录 RabbitMQ概述 什么是 RabbitMQ? 说一说RabbitMQ中的AMQP 为什么…

rancher change domain name 【rancher 更改域名】

文章目录 1. 预备条件2. 准备全部集群的直连 kubeconfig 配置文件3. 准备证书4. 更新证书4.1 Rancher 单节点运行(默认容器自动生成自签名 SSL 证书)#4.2 Rancher 单节点运行(外置自签名 SSL 证书)#4.3 Rancher HA 5. 修改 Ranche…

前端解析后端返回文件流格式数据

当后端接口返回数据是一个文件流数据时,如下后端返回给我的是一个pdf文件流数据 methods: {gotoPri() {protocolApi().then(res > {this.createPdf(res.data,XXX协议)})},createPdf(res, name) {// Blob构造函数返回一个新的 Blob 对象并指定type类型。let blob …

Vue.js+SpringBoot开发智能停车场管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容A. 车主端功能B. 停车工作人员功能C. 系统管理员功能1. 停车位模块2. 车辆模块3. 停车记录模块4. IC卡模块5. IC卡挂失模块 三、界面展示3.1 登录注册3.2 车辆模块3.3 停车位模块3.4 停车数据模块3.5 IC卡档案模块3.6 IC卡挂…

Pytorch学习(杂知识)

目录 Mini-batch 魔法函数 DataLoader与DataSet transformers的简介 torchvision简介 torch.no_grad() Softmax ReLu 随机梯度下降(Stochastic Gradient Descent,SGD) torch.nn.CrossEntropyLoss(),交叉损失函数 Tenso…

掌握C语言指针,轻松解锁代码高效性与灵活性

1. 指针与地址 1.1 概念 我们都知道计算机的数据必须存储在内存里,为了正确地访问这些数据,必须为每个数据都编上号码,就像门牌号、身份证号一样,每个编号是唯一的,根据编号可以准确地找到某个数据。而这些编号我们就…

申创贝拓电气设备邀您参观2024生物发酵展

参展企业介绍 BETTO贝拓电气成立于2017年,初期总部坐落于安徽合肥,从事工业电控机柜的设计和销售工作。2022年总部迁往上海,有了自己的制造基地,涉及制造和销售工业控制柜、操作台、IT机柜、户外机柜、人机界面、悬臂、电气安装成…

怎么把pdf转换成word?

怎么把pdf转换成word?Pdf和word在电脑上的使用非常广泛,pdf和word分别是由 Adobe和Microsoft 分别开发的电脑文件格式。PDF 文件可以在不同操作系统和设备上保持一致的显示效果,无论是在 Windows、Mac 还是移动设备上查看,都能保持…

车载测试面试:题库+项目

车载测试如何面试(面试技巧)https://blog.csdn.net/2301_79031315/article/details/136229809 入职车载测试常见面试题(附答案)https://blog.csdn.net/2301_79031315/article/details/136229946 各大车企面试题汇总(含答案&am…

基于R语言的Meta分析【全流程、不确定性分析】方法与Meta机器学习技术应用

Meta分析是针对某一科研问题,根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法,对来源不同的研究成果进行收集、合并及定量统计分析的方法,最早出现于“循证医学”,现已广泛应用于农林生态,资源环境等方面。…

tigramite教程(一)解释与假定或发现的因果模型相关的关联

文章目录 0、生成一些具有同时依赖关系的示例过程1、估计(马尔可夫等价类的)因果图2、如果马尔可夫等价类有多个成员(存在未定向的边),选择类的一个成员,这可以自动完成3、对从图中提取的因果父节点进行线性…

跨端轻量JavaScript引擎的实现与探索

一、JavaScript 1.JavaScript语言 JavaScript是ECMAScript的实现,由ECMA 39(欧洲计算机制造商协会39号技术委员会)负责制定ECMAScript标准。 ECMAScript发展史: 时间版本说明1997年7月ES1.0 发布当年7月,ECMA262 标准出台1998年6月ES2.0 发布该版本修改完全符合…

cgroup底层技术研究一、cgroup简介与cgroup命令行工具

本文参考以下文章: 58 | cgroup技术:内部创业公司应该独立核算成本 特此致谢! 一、cgroup简介 1. cgroup是什么 cgroup(Control Group)是Linux内核提供的一种机制,用于对进程或进程组进行资源限制、优先…

IDA使用-2023CICSN华中赛区pwn题逆向为例

文章目录 相关字节标识导入函数和导出函数找程序入口函数选项设置重命名CISCN2023华中赛区分区赛AWDIDA源码main 构造结构体sub_141B() 打开局部变量类型的视图增加变量类型重新定义变量类型再次设置变量类型并重新定义再次设置变量类型并重新定义再次设置变量类型并重新定义 设…

项目实战:Qt监测操作系统cpu温度v1.1.0(支持windows、linux、国产麒麟系统)

若该文为原创文章,转载请注明出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/136277231 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结…

linux系统---nginx基础

目录 一、Nginx的概念 二、Nginx常用功能 1、HTTP(正向)代理,反向代理 1.1正向代理 1.2 反向代理 2、负载均衡 2.1 轮询法(默认方法) 2.2 weight权重模式(加权轮询) 2.3 ip_hash 3、web缓存 三、基础特性 四…

@ControllerAdvice 统一管理异常/错误

ControllerAdvice 统一管理异常/错误 文章目录 ControllerAdvice 统一管理异常/错误一、注意事项二、统一管理异常/错误的好处三、代码实现1. 普通方法2. 统一管理ControllerAdvice3. PostMan测试结果 一、注意事项 1. 如果校验注解不指定 message 属性 ,会返回默认消息, 这些…

C++之善用const修饰成员函数

C之善用const修饰成员函数 文章目录 C之善用const修饰成员函数前言1. 约束函数对成员变量的修改2. 允许 const 对象调用3. 在重载函数中提供重载决策总结 前言 ​ 在C编程中,使用const修饰成员函数是一种非常重要的技术手段,它能够提高代码的可维护性、…

Object中的hashCode()

让hashcode方法的返回值为地址 vm参数中输入-XX:UnlockExperimentalVMOptions -XX:hashCode4,如下图: 参考 搞懂JAVAObject中的hashCode()_java_脚本之家 JDK核心JAVA源码解析(9) - hashcode 方法 - 知乎