【前端】使用Vercel部署前端項目,api轉發到后端服務器

文章目錄

    • Vercel是什么
    • 概要
      • Vercel部署分為兩種方案:
      • 一、使用GitHub構建部署
      • 二、通過 Vercel CLI 上傳本地構建資源
      • 注意事項
    • 轉發API到后端
    • 小結

Vercel是什么

Vercel是一款專為前端開發者打造的云部署平臺,它支持一鍵部署靜態網站、AI工具和現代Web應用。Vercel的設計哲學是讓開發者能更專注于代碼本身,而不是繁瑣的服務器配置。無論你是構建個人博客、AI項目演示平臺,還是全棧Web應用,Vercel都能提供高效的部署體驗。

Vercel由Next.js的團隊開發,因此它對React生態尤其友好。平臺支持自動構建和部署,CI/CD流程一站集成,適用于開發者、AI項目團隊、產品經理等多個群體。目前,越來越多的AI工具也選擇通過Vercel部署前端頁面,實現快速訪問和分發。

Vercel非常適合開發者、AI創作者、自由職業者等人群部署博客、文檔站、教程類網站。

概要

本文介紹前端通過Vercel部署,后端服務在阿里云上,所以需要通過nginx來解決跨域和轉發等問題。

Vercel部署分為兩種方案:

  1. 已將代碼推送到 GitHub、GitLab 或 Bitbucket 倉庫
  2. 本地代碼不準備開源,在本地構建好通過Vercel Cli來上傳部署

一、使用GitHub構建部署

  1. 準備項目
    確保你的 Next.js 項目中有正確的配置:
    • package.json 中包含 next 依賴
    • 有正確的啟動腳本(通常 Next.js 項目默認已配置)
  2. 登錄 Vercel
    訪問 Vercel 官網 并使用你的 GitHub 賬號登錄。
  3. 導入項目
    點擊 dashboard 上的 “New Project” 按鈕
    選擇你存放 Next.js 項目的 Git 倉庫
    點擊 “Import” 導入項目
  4. 配置部署選項
    Vercel 會自動檢測 Next.js 項目并配置默認設置,通常無需修改:
    • Framework Preset: 自動選擇 “Next.js”
    • Build Command: 默認為 next build
    • Output Directory: 自動配置
    • 可以根據需要添加環境變量(如 API 密鑰等)
  5. 部署項目
    點擊 “Deploy” 按鈕開始部署過程,Vercel 會:
    • 克隆你的代碼倉庫
    • 安裝依賴
    • 構建項目
    • 部署應用

部署完成后,你會獲得一個自動生成的 URL(格式為 your-project-name.vercel.app),通過該 URL 可以訪問你的應用。

二、通過 Vercel CLI 上傳本地構建資源

  1. 安裝 Vercel CLI
npm install -g vercel
  1. 部署構建目錄
    進入項目根目錄,直接部署構建好的文件夾(如 dist):
vercel dist

在這里插入圖片描述

注意事項

  1. 構建產物的兼容性
    確保構建產物是靜態資源(HTML、CSS、JS、圖片等),且路徑引用正確(避免絕對路徑導致的 404 問題)。
  2. 緩存與更新
    部署后,Vercel 會自動緩存靜態資源。若需強制更新,可通過 CLI 重新上傳部署。

轉發API到后端

部署到 Vercel 后,請求轉發由 vercel.json 配置文件控制,需同步更新后端地址和端口。

  1. 在根目錄下創建vercel.json文件。(與src同級)
{"rewrites": [{"source": "/api/:path*",  // 匹配所有以 /api 開頭的請求// 替換為新的后端服務器地址和端口(需與開發環境保持一致的路徑規則)"destination": "http://新的IP地址:新的端口/:path*"  // 例如: https://api.new-domain.com/:path*}]
}
  1. 重新部署到 Vercel(若用 CLI:vercel dist --prod;若用 Git:推送 vercel.json 變更)。

在這里插入圖片描述
注意最后一行,將靜態資源轉發到入口文件index.html

小結

需要注意的是,vercel分配的域名,有可能國內正常訪問不了,需要通過科學上網等方案。通過綁定你自己的國內可正常解析的域名(如從阿里云、騰訊云等國內服務商購買的域名),繞開 Vercel 默認域名的訪問限制,這是目前最穩定的解決方式。

  1. 確保新的后端服務器允許公網訪問(需配置防火墻、端口映射,或使用域名)。
  2. 若后端有跨域限制,需在后端服務器(如 Nginx)的 CORS 配置中添加新的 Vercel 域名(例如 https://your-project.vercel.app)。
  3. 若需臨時切換后端地址(如測試環境 / 生產環境),可通過環境變量動態配置(推薦用于多環境管理):
    • 在 vite.config.js 中使用 process.env.VITE_API_TARGET 作為代理目標。
    • 在 vercel.json 中通過 Vercel 控制臺的「環境變量」配置后端地址,再通過模板語法引用。

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

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

相關文章

滾珠導軌在工業制造領域如何實現高效運行?

在工業制造領域中滾珠導軌憑借其高精度、低摩擦、高剛性等特點,被廣泛應用于多種設備和場景,并在設備性能中起著關鍵作用,以下是具體應用:加工中心:滾珠導軌用于加工中心的工作臺和主軸箱等部件的移動,能保…

大基座模型與 Scaling Law:AI 時代的邏輯與困境

一、背景:為什么大模型一定要“做大”? 在人工智能的發展歷程中,有一個不容忽視的“鐵律”:更大的模型往往意味著更強的性能。從 GPT-2 到 GPT-4,從 BERT 到 PaLM,從 LLaMA 到 Claude,每一代的…

內網的應用系統間通信需要HTTPS嗎

內網是否需要 HTTPS? 雖然內網通常被視為“相對安全”的環境,但仍需根據具體情況決定是否使用 HTTPS,原因如下: 內部威脅風險 ● 內網可能面臨內部人員攻擊、橫向滲透(如黑客突破邊界后在內網掃描)、設備…

6.ImGui-顏色(色板)

免責聲明:內容僅供學習參考,請合法利用知識,禁止進行違法犯罪活動! 本次游戲沒法給 內容參考于:微塵網絡安全 上一個內容:5.ImGui-按鈕 IMGui中表示顏色的的結構體 ImVec4和ImU32,如下圖紅框…

【C++】Vector完全指南:動態數組高效使用

0. 官方文檔 vector 1. vector介紹 Vector 簡單來說就是順序表,是一個可以動態增長的數組。 vector是表示可變大小數組的序列容器。 就像數組一樣,vector也采用的連續存儲空間來存儲元素。也就是意味著可以采用下標對vector的元素進行訪問&#xff0c…

關于無法導入父路徑的問題

問題重現 有下面的代碼: from ..utils import Config,set_DATA_PATH DATA_PATH set_DATA_PATH()報錯如下:from ..utils import Config,set_DATA_PATH ImportError: attempted relative import beyond top-level package解決方案 #獲取當前腳本所在目錄的…

C/C++包管理工具:Conan

Conan是一個專為C/C設計的開源、去中心化、跨平臺的包管理器,致力于簡化依賴管理和二進制分發流程。Conan基于Python進行開發,支持與主流的構建系統集成,提供了強大的跨平臺和交叉編譯能力。通過Conan,開發者可以高效的創建、共享…

核心高并發復雜接口重構方案

核心高并發復雜接口重構方案 一、重構目標與原則 核心目標 提升接口性能:降低響應時間,提高吞吐量,降低資源使用 增強可維護性:拆解復雜邏輯,模塊化設計,降低后續迭代成本 保障穩定性:通過架構優化和灰度策略,確保重構過程無服務中斷 提升擴展性:設計靈活的擴展點,…

C++容器內存布局與性能優化指南

C容器的內存布局和緩存友好性對程序性能有決定性影響。理解這些底層機制,能幫你寫出更高效的代碼。 一、容器內存布局概述 不同容器在內存中的組織方式差異顯著,這直接影響了它們的訪問效率和適用場景。容器類型內存布局特點元數據位置元素存儲位置std::…

Beautiful.ai:AI輔助PPT工具高效搞定排版,告別熬夜做匯報煩惱

你是不是每次做 PPT 都頭大?找模板、調排版、湊內容,熬大半夜出來的東西還沒眼看?尤其是遇到 “明天就要交匯報” 的緊急情況,打開 PPT 軟件半天,光標在空白頁上晃來晃去,連標題都想不出來 —— 這種抓瞎的…

阿里云攜手MiniMax構建云原生數倉最佳實踐:大模型時代的 Data + AI 數據處理平臺

MiniMax簡介MiniMax是全球領先的通用人工智能科技公司。自2022年初成立以來,MiniMax以“與所有人共創智能”為使命,致力于推動人工智能科技前沿發展,實現通用人工智能(AGI)。MiniMax自主研發了一系列多模態通用大模型,…

一鍵生成PPT的AI工具排名:2025年能讀懂你思路的AI演示工具

人工智能正在重塑PPT制作方式,讓專業演示變得觸手可及。隨著人工智能技術的飛速發展,AI生成PPT工具已成為職場人士、學生和創作者提升效率的得力助手。這些工具通過智能算法,能夠快速將文本、數據或創意轉化為結構化、視覺化的演示文稿&#…

數據庫基礎知識——聚合函數、分組查詢

目錄 一、聚合函數 1.1 count 1.1.1 統計整張表中所有記錄的總條數 1.1.2 統計單列的數據 1.1.3 統計單列記錄限制條件 1.2 sum 1.3 avg 1.4 max, min 二、group by 分組查詢 2.1 語法 2.2 示例 2.3 having 一、聚合函數 常用的聚合函數 函數說明count ([distinc…

改 TDengine 數據庫的時間寫入限制

一 sql連數據庫改 改 TDengine 數據庫的時間寫入限制 之前默認了可寫入時間為一個月,調整為10年,方便測試: SHOW DATABASES;use wi; SELECT CONCAT(ALTER TABLE , table_name, KEEP 3650;) FROM information_schema.ins_tables WHERE db_…

數碼視訊TR100-OTT-G1_國科GK6323_安卓9_廣東聯通原機修改-TTL燒錄包-可救磚

數碼視訊TR100-OTT-G1_國科GK6323_安卓9_廣東聯通原機修改-TTL燒錄包-可救磚刷機教程數碼視訊 TR100-G1 TTL 燒錄刷機教程固件由廣東聯通 TR100-G1 28 原版修改,測試一切正常1、把刷機文件解壓出 備用,盒子主板接好 TTL,不會接自行查找 TTl 接…

TVS防護靜電二極管選型需要注意哪些參數?-ASIM阿賽姆

TVS防護靜電二極管選型關鍵參數詳解TVS(Transient Voltage Suppressor)二極管作為電路防護的核心器件,在電子設備靜電防護(ESD)、浪涌保護等領域發揮著重要作用。本文將系統性地介紹TVS二極管選型過程中需要重點關注的參數指標,幫助工程師做出合理選擇。…

項目經理為什么要有一張PMP?認證?

在項目管理日益成為企業核心競爭力的今天,PMP已成為項目經理職業發展的重要“通行證”。這張由美國項目管理協會(PMI)頒發的全球公認證書,不僅是專業能力的象征,更在職業競爭力、項目成功率、團隊協作等多個維度為項目…

Qt中QSettings的鍵值使用QDataStream進行存儲

1. QDataStream介紹 數據流是編碼信息的二進制流,與主機的操作系統、CPU 或字節順序完全無關。例如,Windows 系統下 PC 寫入的數據流可由運行 Solaris 的 Sun SPARC 讀取。 您還可以使用數據流讀/寫raw unencoded binary data 。如果需要 "解析 &…

Typer 命令行工具使用示例

Typer 命令行工具使用示例 示例1:簡單問候程序 代碼 import typerapp typer.Typer()app.command() def greet(name: str):"""簡單的問候命令"""typer.echo(f"Hello {name}!")if __name__ "__main__":app()使用…

關于CAN總線bus off 理論標準 vs 工程實踐

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 做到欲望極簡,了解自己的真實欲望,不受外在潮流的影響,不盲從,不跟風。把自己的精力全部用在自己。一是去掉多余,凡事找規律,基礎是誠信;二是…