【前端部署】通過 Nginx 讓局域網用戶訪問你的純前端應用

在日常前端開發中,我們常常需要快速將本地的應用展示給局域網內的同事或測試人員,而傳統的共享方式往往效率不高。本文將指導你輕松地將你的純前端應用(無論是 Vue, React, Angular 或原生項目)部署到本地,并配置局域網訪問。

本文僅展示最簡單的部署

一、準備工作

  1. 擁有一個純前端應用:
    • 可以是 Vue, React, Angular 或原生 HTML/CSS/JS 項目。
    • 確保應用已經通過 npm run build (或類似命令) 打包生成了靜態文件 (通常在 distbuild 目錄下)。本文用的是生成的dist文件。
  2. 安裝 Nginx:
    • Windows: 從 Nginx 官網下載穩定版,解壓即可。
    • (可選) Linux/Mac: 簡述包管理器安裝命令 (如 apt install nginx, brew install nginx)。
    • 驗證 Nginx 是否安裝成功 (啟動 Nginx,訪問 http://localhost)。
  3. 了解你的本地 IP 地址:
    • Windows: ipconfig 命令。
    • Linux/Mac: ifconfigip addr 命令。

二、配置Nginx

2.1 新建項目文件夾

為方便管理,你可以在 Nginx 的安裝目錄下創建一個專門存放Web應用的文件夾。

例如,如果你的 Nginx 解壓在 D:\nginx

  1. D:\nginx 目錄下新建 html 文件夾 (如果Nginx解壓后自帶了此目錄,可直接使用)。
  2. D:\nginx\html 中再創建一個項目名文件夾,例如 lowcode
  3. 將你前端項目打包生成的 dist 文件夾整個放入 D:\nginx\html\lowcode\ 中。
    最終 dist 文件夾的路徑示例:D:\nginx\html\lowcode\dist

2.2 修改nginx.conf

配置示例

# ...默認代碼
http {#...默認代碼server {listen       8012; # 監聽端口,避免與常用的8080等端口沖突server_name  localhost;location /lowcode/ { # 配置低代碼應用的訪問路徑alias   D:/nginx/html/lowCode/dist/; # 指定低代碼應用的靜態文件路徑index  index.html index.htm; # 指定默認頁面try_files $uri $uri/ /lowcode/index.html; # 對于單頁面應用 (SPA),此配置確保刷新或直接訪問子路由時能正確加載}#...默認代碼}
}

2.3 啟動與測試nginx

  1. 啟動 Nginx (Windows 為例):
    • 執行 start nginxnginx.exe
  2. 常用 Nginx 命令:
    • nginx -s stop: 停止nginx
    • nginx -s reload: 重新加載配置文件 (修改配置后使用)
    • nginx -t: 測試配置文件是否有語法錯誤
  3. 本地及局域網測試:
    • 本機測試: 在瀏覽器中訪問 http://localhost:訪問端口/訪問路徑/
    • 局域網測試: 在同一局域網內的其他設備上,瀏覽器訪問 http://你的本機IP地址:訪問端口/訪問路徑/ (例如 http://192.168.1.105:8012/lowcode/)。
    • 確認應用能正常顯示和操作。

三、總結

通過以上幾個簡單步驟,你的純前端應用就能借助Nginx在本地成功部署,并實現局域網共享。Nginx的功能遠不止于此,它還可以用于反向代理、負載均衡等多種場景。希望本文能為你的日常開發工作帶來啟發。

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

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

相關文章

【Python裝飾器深潛】從語法糖到元編程的藝術

目錄 ?? 前言??? 技術背景與價值?? 當前技術痛點??? 解決方案概述?? 目標讀者說明?? 一、技術原理剖析?? 核心概念圖解?? 核心作用講解?? 關鍵技術模塊說明?? 技術選型對比??? 二、實戰演示?? 環境配置要求?? 核心代碼實現案例1:基礎計時裝飾器案…

mbed驅動st7789屏幕-硬件選擇及連接(1)

目錄 1.整體介紹 2. 硬件選擇 2.1 mbed L432KC 2.2 ST7789 240*240 1.3寸 3. mbed與st7789的硬件連接 4. 總結 1.整體介紹 我們在使用單片機做一些項目的時候,交互性是最重要的因素。那么對于使用者而言,交互最直接的體現無非就是視覺感知,那么我們希望將項目通過視覺…

SpringBoot集成Jasypt對數據庫連接密碼進行加密、解密

引入依賴 <!--配置密碼加密--><dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>3.0.3</version></dependency><plugin><groupId>c…

分類器引導的條件生成模型

分類器引導的條件生成模型 分類器引導的條件生成模型1. **基本概念**2. **核心思想**3. **實現步驟&#xff08;以擴散模型為例&#xff09;**4. **優點**5. **挑戰與注意事項**6. **應用場景**7. **數學推導**總結 分類器引導的條件生成模型 分類器引導的條件生成模型是一種通…

WPF中的ObjectDataProvider:用于數據綁定的數據源之一

ObjectDataProvider是WPF(Windows Presentation Foundation)中一種強大而靈活的數據綁定源&#xff0c;它允許我們將對象實例、方法結果甚至是構造函數的返回值用作數據源。通過本文&#xff0c;我將深入探討ObjectDataProvider的工作原理、使用場景以及如何在實際應用中發揮其…

lasticsearch 報錯 Document contains at least one immense term 的解決方案

一、問題背景 在使用 Elasticsearch 存儲較大字段數據時&#xff0c;出現如下異常&#xff1a; ElasticsearchStatusException: Elasticsearch exception [typeillegal_argument_exception, reasonDocument contains at least one immense term in field"fieldZgbpka"…

[目標檢測] YOLO系列算法講解

前言 目標檢測就是做到給模型輸入一張圖片或者視頻&#xff0c;模型可以迅速判斷出視頻和圖片里面感興趣的目標所有的位置和它 的類別&#xff0c;而當前最熱門的目標檢測的模型也就是YOLO系列了。 YOLO系列的模型的提出&#xff0c;是為了解決當時目標檢測的模型幀率太低而提…

服務器操作系統時間同步失敗的原因及修復

服務器操作系統時間同步失敗可能導致日志記錄不準確、安全證書失效等問題。以下是常見原因及對應的修復方法&#xff1a; ### 一、時間同步失敗的常見原因 1. **網絡連接問題** - NTP服務器無法訪問&#xff08;防火墻阻止、網絡中斷&#xff09; - DNS解析失敗或網…

Cribl 中function 使用過濾的特殊case:Parser + rename

Cribl 利用function 對parser 進行特殊過濾處理: Parser Function – Fields Filter Expression? When you use the Stream Parser Functions Reserialize option, there is a special option that becomes available, called the Fields Filter Expression. This is basica…

inverse-design-of-grating-coupler-3d

一、設計和優化3D光柵耦合器 1.1 代碼講解 通過預定義的環形間距參數(distances數組),在FDTD中生成橢圓光柵結構,并通過用戶交互確認幾何正確性后,可進一步執行參數掃描優化。 # os:用于操作系統相關功能(如文件路徑操作) import os import sys# lumapi:Lumerical 的…

TuyaOpen橫空出世!涂鴉智能如何用開源框架重構AIoT開發范式?

??「炎碼工坊」技術彈藥已裝填! 點擊關注 → 解鎖工業級干貨【工具實測|項目避坑|源碼燃燒指南】 一、引子:AIoT開發的“不可能三角”被打破 當AI與物理世界深度融合的浪潮席卷全球,開發者們卻始終面臨一個“不可能三角”——開發效率、技術深度與商業化落地難以兼得。 …

智慧賦能光伏運維——無人機巡檢+地面監控雙鏈路覆蓋,打造光伏電站管理新標桿

一、引言&#xff1a;光伏電站運維的挑戰與機遇 在全球能源轉型浪潮下&#xff0c;光伏電站作為清潔能源的重要載體&#xff0c;其高效運維管理成為行業核心命題。然而&#xff0c;傳統光伏電站運維存在覆蓋范圍廣、設備分散、人工巡檢效率低、故障響應慢等痛點。為破解這一難…

前端無感登錄刷新

前端實現無感登錄 在現代的前端開發中&#xff0c;用戶體驗是非常重要的一環。無感登錄&#xff08;也叫自動登錄&#xff09;就是其中一個提升用戶體驗的關鍵功能。它的目標是讓用戶在登錄后&#xff0c;即使關閉瀏覽器或長時間不操作&#xff0c;也能在下次訪問時自動登錄&a…

JAVASE查漏補缺

這段時間學習了很多知識&#xff0c;好多還有疑問不清楚的地方。今天有空總結一下。 javame,javase,javaee 一、Java ME&#xff08;Micro Edition&#xff0c;微型版&#xff09; Java ME是一種適用于移動設備和嵌入式系統的小型Java平臺&#xff0c;具有高度可移植性和跨平…

【設計模式】基于 Java 語言實現工廠模式

目錄 一、簡單工廠模式 1.1 簡單工廠模式的介紹 二、工廠方法模式 2.1 工廠方法模式的介紹 2.2 工廠方法模式的基本實現 2.3 工廠方法模式的應用場景 三、抽象工廠 3.1 抽象工廠的概念 3.2 抽象工廠的基本結構 3.3 抽象工廠的基本實現 3.4 抽象工廠的應用場景 四、…

OpenCV CUDA模塊中的矩陣算術運算------創建卷積操作對象的工廠方法 cv::cuda::createConvolution

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 算法描述 createConvolution函數是OpenCV CUDA 模塊中用于創建卷積操作對象的工廠方法。它返回一個指向 cv::cuda::Convolution 接口的智能指針&#xff0…

IDEA:程序編譯報錯:java: Compilation failed: internal java compiler error

目錄 簡介異常信息排查原因解決 簡介 代碼無法編譯、無法打包 異常信息 java: Compilation failed: internal java compiler error排查 1、代碼近期沒有改動過&#xff0c;原先是可以正常編譯的 2、查看程序JDK&#xff0c;是JDK1.8沒錯&#xff0c;與原先JDK一致 3、出現…

windows 10 做服務器 其他電腦無法訪問,怎么回事?

一般我們會先打開win10自己的防火墻策略&#xff0c;但是容易忽略 電腦之間 路由器上的防火墻&#xff0c;此時也需要查看一下&#xff0c;可以嘗試先關閉路由器防火墻&#xff0c;如果可以了&#xff0c;再 設置路由器上的防火墻規則。 將路由器的上網設置 改成 路由模式 &a…

【人工智能-agent】--Dify+Mysql+Echarts搭建了一個能“聽懂”人話的數據可視化助手!

Echarts官網&#xff1a;https://echarts.apache.org/zh/index.html ECharts 是一個由百度團隊開發的、基于 JavaScript 的開源可視化圖表庫&#xff0c;它提供了豐富的圖表類型和強大的交互功能&#xff0c;能夠幫助開發者輕松創建專業級的數據可視化應用。 核心特點 豐富的圖…

Android設備 顯示充電速度流程

整體邏輯&#xff1a;設備充電速度的判斷 系統通過讀取充電器的最大電流&#xff08;Current&#xff09;與最大電壓&#xff08;Voltage&#xff09;&#xff0c;計算最大充電功率&#xff08;Wattage&#xff09;&#xff0c;以此判斷當前是慢充、普通充還是快充&#xff1a…