【知识拓展】ngrok-高性价比的内网穿透工具

前言

使用google colab运行的web应用无法打开进行测试。

第一时间想到是否有相关工具能将内网映射到外网供访问。于是找到了ngrok。

ngrok 是什么,我们为什么要使用它?

ngrok官网是一个全球分布的反向代理,无论您在哪里运行,它都能保护、保护和加速您的应用程序和网络服务。您可以将ngrok视为应用程序的前门。

ngrok独立于环境的,因为它可以向任何地方运行的服务提供流量,而不会改变您的环境网络。在 AWSAzureHeroku阿里云腾讯云本地 Kubernetes 集群、树莓派甚至笔记本电脑上运行您的应用程序。有了ngrok,一切工作都是一样的。

ngrok 是一个统一的入口平台,因为它将所有组件整合到一个组件中,将您的服务传输到互联网。ngrok将您的反向代理、负载平衡器、API网关、防火墙、交付网络、DDoS保护等整合在一起。

简单的说,可以用于将自己的本地端口暴露到公网上,从而实现内网穿透

如何使用

注册

首先我们需要注册ngrok的账号,打开ngrok | Unified Application Delivery Platform for Developers官网进行注册,需要科学上网。

https://ngrok.com/

快速开始

点击Getting started ,按照文档内容进行安装,选择适合自己的安装方式

colab是python环境的,如下直接使用即可:

from pyngrok import ngrokngrok.set_auth_token("your_auth_token")# 使用 ngrok 将本地的 Gradio 服务器端口转发到公共 URL
public_url = ngrok.connect(addr="8501", proto="http")tunnels = ngrok.get_tunnels()
#ngrok.disconnect(public_url)
print("tunnels:", tunnels)
# 输出公共 URL
#print("Public URL:", public_url)

直接执行

访问成功

注意事项

Authtoken获取

登录后,访问 Ngrok仪表板 获取你的认证令牌。点击Reset Authtoken按钮可重置token。

ERROR: authentication failed: Your account is limited to 1

因为免费的Ngrok账户是受限的,只能同时运行一个Ngrok代理会话。这意味着无法在同一时间运行多个Ngrok隧道,除非你配置了代理会话。

你可以通过两种方式解决这个问题:

  1. 配置Ngrok代理会话:你可以使用Ngrok代理会话配置文件,允许在同一代理会话中运行多个隧道。你可以在 Ngrok文档 中找到如何配置代理会话的详细信息。

  2. 关闭其他Ngrok隧道:关闭其他正在运行的Ngrok隧道,以便你能够创建新的隧道。

无论你选择哪种方法,确保你的Ngrok账户能够允许至少运行一个Ngrok隧道。

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

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

相关文章

【车载开发系列】Autosar中的VFB

【车载开发系列】Autosar中的VFB # 【车载开发系列】Autosar中的VFB 【车载开发系列】Autosar中的VFB一. 什么是VFB二. VFB的优点与缺点1)VFB的缺点2)VFB的好处 三. RTE与VFB之间关系四. 总线架构模式 一. 什么是VFB Virtual Functional Bus。它就是虚拟…

解决Vue项目部署到服务器之后前端向后端发送请求报错404的问题(centos使用docker实现nginx的反向代理)

场景重现: 由于现在流行前后端分离的部署方式,但是按照正确方法部署(如何部署可参考:)之后,发现明明前后端都部署好了并且运行成功,但是前端发送的请求都是404。明明在vue项目中配置了跨域的相…

【Spring Boot】深度复盘在开发搜索引擎项目中重难点的整理,以及遇到的困难和总结

💓 博客主页:从零开始的-CodeNinja之路 ⏩ 收录文章:【Spring Boot】深度复盘在开发搜索引擎项目中重难点的整理,以及遇到的困难和总结 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 什么是搜索引…

Sql语句DML操作 增删改

DML 数据操作 增删改 插入数据 方式1: INSERT INTO 表名(列1,列2……,列n) VALUES(值1,值2…..,值n);方式2: INSERT INTO 表名 set 列名1值1,..列名;方式3: INSERT INTO 表名(列1,列2……,列n) VALUES(值1,值2…..,值n),(值1,值2…..,值n);方式4: INSERT INTO 表名(列1,列2……

AJAX初级

AJAX的概念: 使用浏览器的 XMLHttpRequest 对象 与服务器通信 浏览器网页中,使用 AJAX技术(XHR对象)发起获取省份列表数据的请求,服务器代码响应准备好的省份列表数据给前端,前端拿到数据数组以后&#xf…

常见网络协议及端口号

https://www.cnblogs.com/Snail-yellow/p/17722411.html 常见的网络协议-腾讯云开发者社区-腾讯云 常见的网络协议知识整理_五种常用的网络协议-CSDN博客 端口 协议 常见的网络协议_计算机网络协议有哪些csdn-CSDN博客 ​​​​​​​​​​​​​​协议 常见的网络协议知…

二叉树前中后序遍历

前言 个人小记 一、代码如下 #include<stdio.h> #include <stdlib.h> #include <time.h> #define MAX_NODE 10 #define p()\ {\printf("\n");\ } typedef struct Node {int key;int lfag,rfag;struct Node *lchild,*rchild; }Node;Node* init_no…

TENT: FULLY TEST-TIME ADAPTATION BY ENTROPY MINIMIZATION--论文笔记

论文笔记 资料 1.代码地址 https://github.com/DequanWang/tent 2.论文地址 https://arxiv.org/abs/2006.10726 1论文摘要的翻译 在这种完全测试时适应的情况下&#xff0c;模型只有测试数据和自身参数。我们建议通过测试熵最小化&#xff08;tent&#xff09;进行适应&…

虚拟化技术[2]之存储虚拟化

存储虚拟化 存储虚拟化简介存储虚拟化一般模型存储虚拟化实现方式基于主机存储虚拟化基于存储设备存储虚拟化基于网络存储虚拟化 案例分析&#xff1a;VMFSVMFS功能 存储虚拟化简介 存储虚拟化&#xff1a;将存储网络中的各个分散且异构的存储设备按照一定的策略映射成一个统一…

C++学习笔记(19)——模板

目录 模板参数与非类型模板参数 模板参数 类型模板参数——传递类型 非类型模板参数——传递数量 C11希望array替代静态数组&#xff0c;但实际上vector包揽了一切 模板总结 优点&#xff1a; 缺点&#xff1a; 模板特化&#xff1a;针对某些类型进行特殊化处理 特化…

大模型的快速成长

大模型的关键要素有三点,数据&#xff0c;算法和进化的方式. 首先&#xff0c;数据是基础。大量且高质量的数据对于大模型的成长至关重要。不断收集涵盖更广泛领域、更丰富细节的数据&#xff0c;并且确保数据的准确性和代表性。只有在充分的数据滋养下&#xff0c;大模型才能更…

P451 try-Catch异常处理

//基本使用演示代码 public static void main(String[] args) { int num1 10; int num2 0; try { int res num1 / num2; }catch (Exception e) { System.out.println(e.getMessage()); } } public class TryCatchDetail { public static void main(String[] args) { //1. 如…

ubuntu20.04 终端 设置字体大小

##ubuntu20.04 Terminal 终端 设置字体大小 ##打开Terminal 终端&#xff0c;点击Preferences设置字体大小 ##点击unnamed选项卡&#xff0c;打钩Custom font 设置 字体大小

SQL、Mongo、Redis一般适用于那些场景

在一个项目中同时使用 MySQL、Redis 和 MongoDB 是相对常见的做法&#xff0c;因为它们各自具有不同的特点和适用场景&#xff0c;可以组合使用以满足不同的需求。下面是它们的一些常见用途和特点&#xff1a; MySQL&#xff1a; 关系型数据库&#xff1a; MySQL 是一个传统的关…

topsis综合评价法

TOPSIS综合评价法&#xff08;Technique for Order Preference by Similarity to Ideal Solution&#xff09;是一种多目标决策分析中的有效方法&#xff0c;也被称为优劣解距离法。该方法基于评价对象与理想化目标的接近程度进行排序&#xff0c;从而评估现有对象的相对优劣。…

三前奏:获取/ 读取/ 评估数据【数据分析】

各位大佬好 &#xff0c;这里是阿川的博客 &#xff0c; 祝您变得更强 个人主页&#xff1a;在线OJ的阿川 大佬的支持和鼓励&#xff0c;将是我成长路上最大的动力 阿川水平有限&#xff0c;如有错误&#xff0c;欢迎大佬指正 前面的博客 数据分析—技术栈和开发环境搭建 …

二叉树——堆详解

目录 前言&#xff1a; 一、堆的结构 二、向上调整和向下调整 2.1 向上调整 2.2 向下调整 2.3 向上调整和向下调整时间复杂度比较 三、堆的实现 3.1 堆的初始化 3.2 堆的销毁 3.3 堆的插入 3.4堆的删除 3.5 取堆顶元素 3.6 对堆判空 四、堆排序 五、TOP-K 问题 六、代码总…

基于Vue2与3版本的Element UI与Element Plus入门

基于Vue2与3版本的Element UI与Element Plus入门 Element UI 入门安装引入 Element UI使用组件 Element Plus 入门安装引入 Element Plus使用组件 常用组件自定义主题兼容性和升级社区和支持 Element UI 入门 Element UI 是基于 Vue 2.0 的桌面端组件库&#xff0c;它提供了一…

js报错replaceAll不是一个function(特定设备),如何在平板中展示前端控制台

工作记录-前端——replaceAll方法不兼容以及如何在平板调试前端代码&#xff08;看到控制台报错信息&#xff09; 创作场景如何在平板显示控制台第一步第二步 关于replaceAll不兼容问题相同点不同点 如何识别粘贴操作中的换行符下课 创作场景 公司项目要求兼容pc、平板、手机等…

你真正了解 Java 中的 Date 类吗?以及如何正确使用它

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…