如何用廢棄電腦變成服務器搭建web網站(公網訪問零成本)

文章目錄

  • 💻 如何用廢棄電腦變成服務器搭建 Web 網站(公網訪問零成本)
    • 一、背景與目標
      • ? 本文目標:
    • 二、準備工作(軟硬件需求)
      • 🧱 1. 硬件需求
      • 🧰 2. 軟件環境準備
    • 三、快速搭建一個 Flask + Vue 的 Web 網站
      • ? 第1步:創建 Flask 后端項目
      • ? 第2步:創建 Vue 前端項目
    • 四、免費實現公網訪問:Cloudflare Tunnel 全流程
      • ? 1. 什么是 Cloudflare Tunnel?
      • ? 2. Cloudflare Tunnel 實戰步驟
        • (1)注冊 Cloudflare 賬號
        • (2)添加站點
        • (3)下載并安裝 `cloudflared` 工具
        • (4)登錄 Cloudflare
        • (5)創建 tunnel 并綁定本地服務
    • 五、自動化部署建議
      • ? Windows:
      • ? Linux:
    • 六、常見問題排查
    • 七、總結與后續拓展
      • 🎯 后續你可以拓展部署的項目:

💻 如何用廢棄電腦變成服務器搭建 Web 網站(公網訪問零成本)


一、背景與目標

你是否有一臺吃灰的舊筆記本電腦?你是否想搭建一個自己的網站,甚至把它放到網上給別人訪問?傳統方式可能需要花錢買服務器、配置公網 IP、操作麻煩。而我們今天要做的,是:

用你手邊的廢棄電腦(比如舊筆記本),搭建一個本地服務器,并使用 Cloudflare Tunnel 免費實現公網訪問,0成本上線一個 Web 網站!

? 本文目標:

  • 把一臺廢棄電腦(Windows/Linux)變成一臺 后端 Flask + 前端 Vue 的 Web 服務器
  • 0 花費實現公網訪問(不需要買公網 IP,不需要租服務器)
  • 可用于搭建資源站、博客站、API服務、自用管理系統等

二、準備工作(軟硬件需求)

🧱 1. 硬件需求

名稱要求
廢舊筆記本建議內存≥4G,系統 Win10 或 Ubuntu
網絡穩定聯網即可(支持 IPv4 即可)
電源建議插電使用,避免中斷

如果是臺式電腦,也一樣適用。


🧰 2. 軟件環境準備

我們需要以下軟件環境:

目的軟件
后端開發Python3 + Flask
前端開發Node.js + Vue CLI
公網訪問Cloudflare Tunnel 工具 cloudflared
其他Git(可選)、瀏覽器、命令行

三、快速搭建一個 Flask + Vue 的 Web 網站

我們先搭建一個最簡單的 Flask + Vue 項目,用于后面上線演示。

? 第1步:創建 Flask 后端項目

mkdir myserver && cd myserver
python -m venv venv
source venv/bin/activate  # Windows用 venv\Scripts\activate
pip install flask

創建一個 app.py:

from flask import Flask, jsonify
app = Flask(__name__)@app.route('/')
def hello():return jsonify({"msg": "你好,來自 Flask 的后端!"})if __name__ == '__main__':app.run(host='0.0.0.0', port=5000)

然后運行:

python app.py

瀏覽器訪問 http://localhost:5000,你應該能看到一段 JSON 文本:{"msg": "你好,來自 Flask 的后端!"}


? 第2步:創建 Vue 前端項目

確保你已經安裝了 Node.js,建議版本 ≥ 16。然后執行:

npm install -g @vue/cli
vue create my-frontend
cd my-frontend
npm run serve

這時 Vue 默認監聽 http://localhost:8080,你可以把它改成請求 Flask 后端的數據,后續我也會配合 Cloudflare Tunnel 展示如何整合。


四、免費實現公網訪問:Cloudflare Tunnel 全流程

這部分我們重點講清楚兩個問題:

? 1. 什么是 Cloudflare Tunnel?

Cloudflare Tunnel 是 Cloudflare 提供的一種“內網穿透”方案:

  • 本質上它在你的電腦與 Cloudflare 網絡之間建了一個“隧道”;
  • 外部用戶訪問 Cloudflare 提供的網址,Cloudflare 再轉發到你電腦上的 Flask 服務;
  • 整個過程是加密安全的,并不暴露你的真實 IP,也不需要配置路由器!

簡而言之,它是一個免費的公網訪問神器。


? 2. Cloudflare Tunnel 實戰步驟

(1)注冊 Cloudflare 賬號

打開 https://dash.cloudflare.com,用郵箱免費注冊一個賬號。

(2)添加站點

你可以用自己已有的域名,也可以用 Cloudflare 提供的臨時域名(推薦后者,零成本)。

建議添加一個網站,如 yourname.cf,不一定需要備案,用作演示即可。

(3)下載并安裝 cloudflared 工具

這是 Cloudflare 提供的命令行工具,用來開啟 tunnel:

  • Windows 版本:
    https://developers.cloudflare.com/cloudflared/install-windows/

  • Linux 安裝命令:

wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared-linux-amd64.deb

安裝完成后,檢查是否成功:

cloudflared --version

(4)登錄 Cloudflare
cloudflared login

運行后會自動打開一個瀏覽器,選擇你在 Cloudflare 添加的網站即可。


(5)創建 tunnel 并綁定本地服務

例如我們要將本地的 Flask 服務(5000端口)暴露到公網:

cloudflared tunnel create flask-server

然后:

cloudflared tunnel route dns flask-server flask.yourname.cf

最后運行:

cloudflared tunnel run flask-server

這時你就可以通過 https://flask.yourname.cf 訪問到你電腦上的 Flask 項目啦!



五、自動化部署建議

為了讓 tunnel 在電腦重啟后也能自動運行,可以設置以下方式:

? Windows:

創建一個 bat 文件 start_tunnel.bat

@echo off
cloudflared tunnel run flask-server

然后設置任務計劃,開機自動運行即可。


? Linux:

可以用 systemd 服務或 nohup + cron,更穩定。

nohup cloudflared tunnel run flask-server > tunnel.log &

六、常見問題排查

問題解決方法
tunnel 運行后打不開檢查 Flask 是否運行,或端口是否設置正確
提示未登錄 Cloudflare再次運行 cloudflared login 綁定賬號
本地網絡不通檢查防火墻設置或端口是否被占用

七、總結與后續拓展

通過本文,你已經掌握了如何用舊電腦:

  • 快速搭建 Web 服務(Flask + Vue)
  • 使用 Cloudflare Tunnel 實現 0 成本公網訪問
  • 項目部署到線上、支持訪問、無需公網 IP!

🎯 后續你可以拓展部署的項目:

  • Flask + Vue 做成資源下載站、后臺管理系統
  • Jupyter Notebook 在線訪問(遠程學習)
  • 文件管理系統、個人博客系統等

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/912783.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/912783.shtml
英文地址,請注明出處:http://en.pswp.cn/news/912783.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

〔從零搭建〕指標體系平臺部署指南

🔥🔥 AllData大數據產品是可定義數據中臺,以數據平臺為底座,以數據中臺為橋梁,以機器學習平臺為中層框架,以大模型應用為上游產品,提供全鏈路數字化解決方案。 ?杭州奧零數據科技官網&#xf…

Vue3 中watch和computed

Vue 3 中 computed 與 watch 深度解析 在 Vue 3 組合中&#xff0c;響應式工具的類型安全使用至關重要。以下是詳細說明 一、watch 偵聽器 1. 基礎類型監聽 <template><div>實際參數1{{count}}</div><div><button click"count">點…

.NET測試工具Parasoft dotTEST:全兼容RMS的測試解決方案

隨著項目規模擴大&#xff0c;需求管理變得復雜&#xff0c;如何高效追溯需求與測試的關聯性成為一大挑戰。Parasoft dotTEST 提供了一套強大的需求追溯解決方案&#xff0c;不僅能自動關聯單元測試結果與需求&#xff0c;還能兼容幾乎所有需求管理系統&#xff08;RMS&#xf…

基于Jeecgboot3.8.1的vue3版本前后端分離的flowable流程管理平臺

初步遷移完成了基于jeecgboot3.8.1的vue3版本的前后端流程管理平臺,基于flowable6.8.0,同時支持bpmn流程設計器與仿釘釘流程設計器。 功能類似于3.6.3,但增加了一些以下功能: 1、支持多租戶 2、支持并行網關的任意跳轉、退回與駁回 3、流程表達式 這里流程表達式定義四…

IP 限流 vs. URI 限流

背景&#xff1a; 昨天調程序的時候遇到了一個 BUG&#xff0c;前端無法將文件正確傳給后端&#xff0c;后端報錯 EOFException&#xff08;EOF 代表 End Of File&#xff09;就是在程序嘗試從一個數據流中讀取數據時&#xff0c;發現已經到達了數據流的末尾&#xff0c;但它卻…

2025年Java常見面試題(持續更新)

數據庫事務特性。原子性、一致性、隔離性、持久性如何防止SQL注入&#xff1a;使用#不要使用$符號&#xff1b;對所有的入參做校驗&#xff1b;使用存儲過程&#xff1b;執行預處理語句和參數化查詢&#xff1b;最低權限原則&#xff1b;微服務拆分的原則&#xff1a;微服務的拆…

Spring AI ——在springboot應用中實現基本聊天功能(ChatModel)

文章目錄 前言項目版本依賴引入配置key信息編寫測試接口注入ChatModel并普通返回注入ChatModel并流式返回自定義模型對象并直接返回總結前言 在Spring AI 中,CchatClient 是一個所有大模型通用性的調用方式,對絕大多數大模型的功能點都具備封裝和見解調用性。 但這一點在部…

78、系統工程生命周期階段及方法

一、系統工程生命周期的七大階段 系統工程生命周期涵蓋從概念萌芽到系統退役的全過程&#xff0c;通常分為以下七個階段&#xff0c;每個階段具有明確目標與核心任務&#xff1a; 1.探索性研究階段 目標&#xff1a;識別利益相關者需求&#xff0c;探索技術可行性。任務&…

二十九、【用戶體驗篇】個人中心:用戶資料展示與密碼修改

二十九、【用戶體驗篇】個人中心:用戶資料展示與密碼修改 前言準備工作第一部分:后端實現 - 個人中心 API1. 修改 `UserDetailSerializer` 以支持密碼修改2. 在 `api/views.py` 中添加 `UserMeView` 和 `PasswordChangeView`3. 注冊個人中心相關 API 路由4. 后端初步測試第二…

STEP-BACK PROMPTING:退一步:通過抽象在大型語言模型中喚起推理能力

摘要 我們提出了 STEP-BACK PROMPTING&#xff0c;這是一種簡單的提示技術&#xff0c;可以讓LLM進行抽象&#xff0c;從包含具體細節的實例中推導出高層次概念和第一性原理。利用這些概念和原理來引導推理過程&#xff0c;LLM在朝向正確解答路徑上顯著提升了推理能力。我們在…

Paimon vs. HBase:全鏈路開銷對比

Paimon 在特定場景&#xff08;如流式 Lookup Join&#xff09;下&#xff0c;會為了極致的查詢性能而引入額外的存儲&#xff08;本地磁盤 LookupFile&#xff09;和計算&#xff08;構建 LookupFile&#xff09;開銷。但這是一種用一次性的、可控的開銷&#xff0c;換取后續持…

本地的包名導致的AttributeError: module ‘langchain‘ has no attribute ‘verbose‘

你遇到的 AttributeError: module langchain has no attribute verbose 問題&#xff0c;確實可能是因為你的本地文件或目錄名與 langchain 官方包沖突&#xff0c;導致 Python 在導入時優先加載了你的本地文件而非真正的 langchain 庫。 問題原因 Python 模塊加載機制&#xf…

玄機——某學校系統中挖礦病毒應急排查

本篇文章主要記錄某學校長期未運營維護的程序&#xff0c;被黑客發現了漏洞&#xff0c;但好在學校有全流量設備&#xff0c;抓取到了過程中的流量包 需要你進行上機以及結合流量分析&#xff0c;排查攻擊者利用的漏洞以及上傳利用成功的木馬 文章目錄 靶機介紹1.使用工具分析共…

如何解決wordpress批量刪除媒體庫中的圖片很慢甚至卡死問題

批量刪除WordPress媒體庫中的圖片速度很慢&#xff0c;如果批量刪除的圖片多會出現CPU100%甚至卡死&#xff0c;出現這個問題通常最主要的原因是服務器性能問題&#xff0c;如果換成性能好的服務器就不會了&#xff0c;比如換Siteground 家的服務器&#xff0c;就不會有這個問題…

深度學習入門day4--手寫數字識別初探

魚書提供的代碼可以在github找到。源碼地址 環境配置部分可以看前面幾篇博客&#xff0c;還是用Anaconda&#xff0c;運行下面代碼&#xff0c;可以看哪個庫缺失。 import importlib import numpy as np deps {"torch": "torch","torchvision"…

STM32中定時器配置,HAL_Delay的原理,滴答定時器,微秒延時實現,PWM,呼吸燈

目錄 定時器基本定時功能實現 CubeMX設置 手動書寫代碼部分 定時器啟動 實現溢出回調函數 HAL_Delay介紹 HAL_Delay實現原理 HAL_Delay的優點 HAL_Delay的缺點 利用滴答定時器(SysTick)實現微秒級延時 PWM PWM介紹 通用定時器中的重要寄存器 PWM中的捕獲比較通道 …

飛牛NAS(fnOS)詳細安裝教程

以下是飛牛NAS&#xff08;fnOS&#xff09;的詳細安裝教程&#xff0c;結合官方指南和社區實踐整理而成&#xff1a; 一、準備工作 硬件需求 8GB或更大容量的U盤&#xff08;用于制作啟動盤&#xff09;待安裝設備&#xff08;支持x86架構的物理機或迷你主機&#xff0c;如天鋇…

springboot 顯示打印加載bean耗時工具類

一 spring的原生接口說明 1.1 接口說明 Aware是Spring框架提供的一組特殊接口&#xff0c;可以讓Bean從Spring容器中拿到一些資源信息。 BeanFactoryAware&#xff1a;實現該接口&#xff0c;可以訪問BeanFactory對象&#xff0c;從而獲取Bean在容器中的相關信息。 Environm…

OpenGL空間站場景實現方案

OpenGL空間站場景實現方案 需求分析 根據任務要求,我需要完成一個基于Nehe OpenGL的空間站場景,實現以下功能: 完整的空間站場景建模(包含多個模型和紋理貼圖)Phong光照模型實現(包含多種光源和材質效果)攝像機鍵盤控制交互功能解決方案設計 技術棧 C++編程語言OpenG…

基于昇騰310B4的YOLOv8目標檢測推理

YOLOv8目標檢測 om 模型推理 本篇博客將手把手教你如何將 YOLOv8 目標檢測模型部署到華為昇騰 310B4 開發板上進行高效推理&#xff08;其他昇騰開發版也可參考此流程&#xff09;。 整個流程包括&#xff1a; 模型格式轉換&#xff08;ONNX → OM&#xff09;昇騰推理環境配…