位置: IT常识 - 正文

使用宝塔面板快速搭建web网站,并内网穿透实现公网远程访问(宝塔面板使用教程)

编辑:rootadmin
原力计划使用宝塔面板快速搭建web网站,并内网穿透实现公网远程访问

推荐整理分享使用宝塔面板快速搭建web网站,并内网穿透实现公网远程访问(宝塔面板使用教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:宝塔面板使用指南,宝塔面板快捷指令,使用宝塔面板快捷键设置,使用宝塔面板快捷键设置,宝塔面板快乐版,使用宝塔面板快捷键设置,使用宝塔面板快速部署Django项目,使用宝塔面板快捷键设置,内容如对您有帮助,希望把文章链接给更多的朋友!

目录

1. 环境安装

2. 安装cpolar内网穿透 

3. 内网穿透

4. 固定http地址

5. 配置二级子域名

6. 创建一个测试页面


宝塔面板简单几步搭建本地web站点,并做内网穿透,实现公网用户也可以正常远程访问,无需公网IP,无需设置路由器。

1. 环境安装

安装apache服务器,在宝塔面板中我们点击网站,然后会提示安装apache服务器。

 选择极速安装

然后等待安装完成即可,安装完成在左边消息列表会提示

2. 安装cpolar内网穿透 

打开宝塔终端命令窗口,使用cpolar一件安装脚本:

// 命令窗口输入curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

token认证

登录cpolar官网(www.cpolar.com/)点击左侧的`验证`,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx

 向系统添加服务

sudo systemctl enable cpolar

启动cpolar服务

sudo systemctl start cpolar

 开放9200端口,在宝塔面板中选择安全.然后开放9200端口

 登录cpolar web UI 管理界面

然后局域网ip访问9200端口即可出现cpolar管理界面,输入cpolar邮箱账号进行登陆

3. 内网穿透

登录cpolar web UI管理界面后,我们创建一个http隧道,指向80端口,因为apache服务默认是80端口

隧道名称:可自定义,注意不要重复

协议:http

本地地址:80

端口类型:随机域名

地区:China vip

点击`创建`

 创建成功后我们打开在线隧道列表复制创建的公网地址

然后我们打开宝塔面板,点击网站,选择添加站点,把复制的公网地址粘贴到域名的参数框,然后点击提交 

使用宝塔面板快速搭建web网站,并内网穿透实现公网远程访问(宝塔面板使用教程)

这个时候我们可以看到站点创建成功

 然后我们再使用复制的公网地址,打开浏览器访问,出现欢迎页表示成功

4. 固定http地址

由于刚刚创建隧道使用的是随机临时地址,该地址会在24小时内发生变化,为了长期远程访问,我们接下来将这个公网地址配置为固定的。

需升级至基础套餐或以上才支持配置二级子域名

登录cpolar官网后台,点击左侧仪表盘的`预留`,找到`保留二级子域名`,为http隧道保留一个二级子域名。

*地区:选择服务器地区*

*名称:填写您想要保留的二级子域名(可自定义)*

*描述:即备注,可自定义填写*

 本例保留一个名称为`mywebsitegame`的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。

5. 配置二级子域名

登录cpolar web ui管理界面。点击左侧仪表盘的`隧道管理`——`隧道列表`,找到需要配置二级子域名的隧道(本例中为apache website隧道),点击右侧的`编辑`

 修改隧道信息,将二级子域名配置到隧道中:

*域名类型:改为选择`二级子域名`*

*Sub Domain:填写我们刚刚所保留的二级子域名(本例为`mywebsitegame`)*

修改完成后,点击`更新` 

 隧道更新成功后,点击左侧仪表盘的`状态`——`在线隧道列表`,可以看到隧道的公网地址,已经更新为二级子域名了,将公网地址复制下来。

然后我们打开宝塔面板,找到站点,点击设置

 添加一个我们固定的公网地址域名

然后把之前创建的随机地址删除

然后我们打开浏览器,使用固定的公网地址进行访问,以上我们就配置好了站点远程访问

6. 创建一个测试页面

点击站点根目录路径,直接点击

 新建一个名字为game.html页面

 然后双击文件编辑,把下面代码复制进去(贪吃蛇小游戏),然后Ctrl+S保存

<!DOCTYPE html><html><head><title>贪吃蛇</title><meta charset="UTF-8"><meta name="keywords" content="贪吃蛇"><meta name="Description" content="这是一个初学者用来学习的小游戏"><style type="text/css">*{margin:0;}.map{margin:100px auto;height:600px;width:900px;background:#00D0FF;border:10px solid #AFAEB2;border-radius:8px;}</style></head><body><div class="map"><canvas id="canvas" height="600" width="900"></canvas></div><script type="text/javascript"> //获取绘制工具/*var canvas = document.getElementById("canvas");var ctx = canvas.getContext("2d");//获取上下文ctx.moveTo(0,0);ctx.lineTo(450,450);*/var c=document.getElementById("canvas"); var ctx=c.getContext("2d"); /*ctx.beginPath(); ctx.moveTo(0,0); ctx.lineTo(450,450); ctx.stroke(); */ var snake =[];//定义一条蛇,画蛇的身体 var snakeCount = 6;//初始化蛇的长度var foodx =0;var foody =0; var togo =0; function drawtable()//画地图的函数 { for(var i=0;i<60;i++)//画竖线 { ctx.strokeStyle="black"; ctx.beginPath(); ctx.moveTo(15*i,0); ctx.lineTo(15*i,600); ctx.closePath(); ctx.stroke(); } for(var j=0;j<40;j++)//画横线 { ctx.strokeStyle="black"; ctx.beginPath(); ctx.moveTo(0,15*j); ctx.lineTo(900,15*j); ctx.closePath(); ctx.stroke(); } for(var k=0;k<snakeCount;k++)//画蛇的身体{ctx.fillStyle="#000";if (k==snakeCount-1){ctx.fillStyle="red";//蛇头的颜色与身体区分开}ctx.fillRect(snake[k].x,snake[k].y,15,15);//前两个数是矩形的起始坐标,后两个数是矩形的长宽。}//绘制食物 ctx.fillStyle ="black"; ctx.fillRect(foodx,foody,15,15); ctx.fill(); } function start()//定义蛇的坐标 { //var snake =[];//定义一条蛇,画蛇的身体 //var snakeCount = 6;//初始化蛇的长度for(var k=0;k<snakeCount;k++) { snake[k]={x:k*15,y:0}; } drawtable(); addfood();//在start中调用添加食物函数 } function addfood(){foodx = Math.floor(Math.random()*60)*15; //随机产生一个0-1之间的数foody = Math.floor(Math.random()*40)*15;for (var k=0;k<snake;k++){if (foodx==snake[k].x&&foody==sanke[k].y)//防止产生的随机食物落在蛇身上{addfood();}}} function move() {switch (togo){case 1: snake.push({x:snake[snakeCount-1].x-15,y:snake[snakeCount-1].y}); break;//向左走case 2: snake.push({x:snake[snakeCount-1].x,y:snake[snakeCount-1].y-15}); break;case 3: snake.push({x:snake[snakeCount-1].x+15,y:snake[snakeCount-1].y}); break;case 4: snake.push({x:snake[snakeCount-1].x,y:snake[snakeCount-1].y+15}); break;case 5: snake.push({x:snake[snakeCount-1].x-15,y:snake[snakeCount-1].y-15}); break;case 6: snake.push({x:snake[snakeCount-1].x+15,y:snake[snakeCount-1].y+15}); break;default: snake.push({x:snake[snakeCount-1].x+15,y:snake[snakeCount-1].y});} snake.shift();//删除数组第一个元素 ctx.clearRect(0,0,900,600);//清除画布重新绘制 isEat();isDead();drawtable(); } function keydown(e) { switch(e.keyCode){ case 37: togo=1; break; case 38: togo=2; break; case 39: togo=3; break; case 40: togo=4; break; case 65: togo=5; break; case 68: togo=6; break;} } function isEat()//吃到食物后长度加1 { if(snake[snakeCount-1].x==foodx&&snake[snakeCount-1].y==foody) {addfood();snakeCount++;snake.unshift({x:-15,y:-15}); } } //死亡函数 function isDead() { if (snake[snakeCount-1].x>885||snake[snakeCount-1].y>585||snake[snakeCount-1].x<0||snake[snakeCount-1].y<0){window.location.reload();} } document.onkeydown=function(e){keydown(e);} window.onload = function()//调用函数{ start();setInterval(move,150);drawtable();}</script></body></html>

 然后我们浏览器使用公网地址加这个html文件访问,即可看到我们部署的小游戏。

最后,为大家带来从0到1,帮助初学者实战的全网最优质专栏:

前端部分:Vue + SpringBoot前后端分离项目实战

服务端部分:SpringBoot+Vue前后端分离项目实战

本文链接地址:https://www.jiuchutong.com/zhishi/295307.html 转载请保留说明!

上一篇:Google I/O 2023 大会上发布了一些令人兴奋的技术和产品,让我们一起来看看吧!

下一篇:落日时分的香巴拉过山车剪影,西班牙塔拉戈纳萨洛 (© Joaquim F. P./Getty Images)(落日时光)

  • 外聘专家发生的差旅费
  • 计提个税会计分录怎么做小规模
  • 工业增加值怎么找
  • 企业筹建期间契税账务处理
  • 公司成立之初做哪些
  • 使用权资产计入资产负债表哪个科目
  • 预交增值税设备租赁是否可抵扣
  • 企业职工遣散费标准
  • 本行给企业发放贷款收回利息分录?
  • 返利抵扣货款
  • 什么叫经纪代理服务
  • 负数发票需要抵扣吗
  • 坏账准备一般余额在哪方
  • 销售中有运费收入吗
  • 购买的认证标志入什么费用?
  • 微小企业税率由3%变为1%客户要求降价
  • 退税上传,申报怎么操作
  • 种植保险包括
  • 外汇收汇怎么做账
  • 法定盈余公积是留存收益吗
  • 日常服务app
  • 预付款能开发票吗?
  • 未分配利润是怎么算出来的
  • 净资产有哪些科目
  • 以前年度多计提的税金怎么调整
  • 成品油零售加油站增值税规定
  • 减税期间还能开3%的票吗
  • 在linux系统中 用来存放系统所需
  • 微信公众号 h5 保存openid
  • 偷税漏税如何处罚
  • 辅导期内的企业有哪些
  • 本单位生产的水泥属于
  • 其他应付款的会计科目
  • 一借多贷的会计分录格式
  • Vue Element UI 中 el-table 树形数据 tree-props 多层级使用避坑
  • 一阶段目标检测算法
  • 消费税购置税价格一样
  • 推特网页设置
  • 公司注销开户行需要注销吗
  • 递延收益期限
  • dedecms官网
  • 帝国cms8.0
  • .dot python
  • 利润表反映了什么能力
  • 甲供材的卸料由谁负责
  • 企业残障金缴纳标准
  • 个人所得税申报数
  • 留抵抵欠税附加税需要交嘛
  • 用于出口的进项发票怎么做账
  • 购买材料没开票怎么做账
  • 企业与股东之间的交易是否会影响企业财务目标的实现
  • 重分类调整分录是什么
  • 注册资本转出可以吗
  • 利润表持续经营净利润怎么算
  • 物流行业货币资金占比
  • 如何自己解封微信号呢
  • freebsd login
  • usb3.0接口可以插优盘吗
  • mac显示隐藏文件夹
  • 果粉必修课 盘点Mac OS X系统发展史
  • windows移动中心英文怎么写
  • 怎么恢复电脑win7系统
  • win10提醒功能
  • win10的蓝屏界面
  • es6解构函数
  • 浅谈jquery的应用
  • 狗刨好学吗
  • jquery左侧导航栏
  • dos命令显示时间
  • node+mongodb
  • android内存分析显示
  • 基于javascript的毕业设计
  • Tasharen Fog of War v1.0战争迷雾插件的使用(含Unity5.0Bug解决)
  • jquerychange事件
  • python约瑟夫问题最高效算法
  • 买药开税票多少税率
  • 3000劳务报酬如何缴税
  • 国税总局网
  • 价税分离计算公式
  • 消费发票上的金额含税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设