零成本个人公网网站搭建全流程(服务器搭建+内网穿透+绑定域名)导言:

一个基础的网站由三部分构成:

1、公网域名

2、网页内容(html前端)

3、网站服务器(处理访问请求,返回数据的后端的运行环境)

例如百度网站

20250831213334827-image

可以直观看到的是域名www.baidu.com,和网页内容(heml)

看不到的是后端运行的百度网站服务器

我们要实现自己的网站,能让他人任意访问,就需要具备相同的构成。

当然,不用公网域名也可以,那样就是局域网内的网站,实际作用就很受限了

域名获取
付费方案:在阿里云万网购买喜欢的域名

免费方案:注册NATPP网站,获取免费域名(域名三天到期,可免费再次申领三天,可无限续杯)

20250831213402617-image

根据需求选择web协议

20250831213429293-image

保存authtoken和域名

20250831213502583-image

至此,我们获得了可以分享给他人访问的域名

内网穿透
修改内网穿透配置文件

使用本地配置文件config.ini – NATAPP-内网穿透 基于ngrok的国内高速内网映射工具

20250831213533579-image

运行内网穿透软件natapp.exe

20250831213552490-image

上图是成功运行界面

搭建网站服务器
1. Python Web 服务器示例(Flask)
假设 Natapp 映射的是 5000 端口,你可以写 server.py:

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def home():
    # Flask 会去 templates/index.html 找文件并返回
    return render_template("index.html")

if __name__ == "__main__":
    # 用 0.0.0.0 监听所有地址,端口 80(Natapp 转发用)
    app.run(host="0.0.0.0", port=80)

安装 Flask:

pip3 install flask

运行:

python3 server.py

此时本地的 80端口上已经有网站了。显示的是本地index.html网页文件

20250831213758348-image

网页内容html前端:

在此我就只是展示几段文字,一个图片,一个跳转按钮。由于图片是本地图片,使用预览并不能显示

20250831213827241-image

图片

20250831213906953-image

  1. 运行效果
    web服务器 内网穿透软件

20250831213943576-image

电脑访问效果

20250831214009941-image

手机访问效果

20250831214024242-image

4. 注意事项
Natapp 免费版域名会变,如果你想固定一个域名,需要升级到付费版。
你的 Flask 程序必须一直运行,Natapp 客户端也要一直运行,否则外部无法访问。
杂谈
目前使用Windows PC个人电脑运行网站部署,但是个人电脑耗电较高,可以使用性能较高,稳定的做法,租个云服务器来跑网站。

但我有卡片电脑——泰山派(类似树莓派),运行linux系统,搭建方法基本一致,搭建运行python web服务器,运行Natapp内网穿透(linux版本)

也可以手机下载Termux,配置Ubuntu环境,运行python服务器和Natapp内网穿透(linux版本)

非常的自由哈哈

预想中linux卡片电脑弄个网页挂载个数据库,绘制ui界面,配合MQTT或者WebSocket,加个esp32s3+lvgl+检测传感器数据上传到网站显示,做个物联网云平台,来当毕设,感觉会挺有意思

如果各位大佬觉得该文章对您有帮助,有意思,恳请点点左下角的推荐该文,不胜感激!

20250831214044390-image

20250831214056919-image

20250831214106394-image

20250831214118743-image

基础代码
服务器
python server

# from flask import Flask

# app = Flask(__name__)

# @app.route("/")
# def home():
#     return "<h1>Hello! 这是pyc的 服务器</h1>"

# if __name__ == "__main__":
#     # 修改端口为 80,与 Natapp 配置匹配
#     app.run(host="0.0.0.0", port=80)

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def home():
    # Flask 会去 templates/index.html 找文件并返回
    return render_template("index.html")

if __name__ == "__main__":
    # 用 0.0.0.0 监听所有地址,端口 80(Natapp 转发用)
    app.run(host="0.0.0.0", port=80)

网页html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>我的 Flask 网页</title>
  </head>
  <body>
    <h1>Hello! 这是 xxx的服务器 Web 页面</h1>
  </body>
</html>

Natapp 配置文件config.ini

#将本文件放置于natapp同级目录 程序将读取 [default] 段
#在命令行参数模式如 natapp -authtoken=xxx 等相同参数将会覆盖掉此配置
#命令行参数 -config= 可以指定任意config.ini文件
[default]
authtoken=                      #对应一条隧道的authtoken
clienttoken=                    #对应客户端的clienttoken,将会忽略authtoken,若无请留空,
log=none                        #log 日志文件,可指定本地文件, none=不做记录,stdout=直接屏幕输出 ,默认为none
loglevel=ERROR                  #日志等级 DEBUG, INFO, WARNING, ERROR 默认为 DEBUG
http_proxy=                     #代理设置 如 http://10.123.10.10:3128 非代理上网用户请务必留空

 

🎀 🌸

📜 重要提示:
如有解压密码:看下载页、看下载页、看下载页。
源码工具资源类具有可复制性: 建议具有一定思考和动手能力的用户购买。
请谨慎考虑: 小白用户和缺乏思考动手能力者不建议赞助。
虚拟商品购买须知: 虚拟类商品,一经打赏赞助,不支持退款。请谅解,谢谢合作!
邻兔跃官网:lt.lintuyue.com(如有解压密码看下载页说明)。

文章版权声明 1、本网站名称:邻兔跃lT
2、本站永久网址:https://lt.lintuyue.com/
3、本站内容主要来源于互联网优质资源整合、网友积极投稿以及部分原创内容,仅供内部学习研究软件设计思想和原理使用,学习研究后请自觉删除,请勿传播,因未及时删除所造成的任何后果责任自负,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容