nginx配置跨域請求,后臺不用配置啦,完美

允許全部把域名改*

server {  listen       22222;  server_name  localhost;  location  / {  if ($request_method = 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:8080';  add_header Access-Control-Allow-Headers '*';  add_header Access-Control-Allow-Methods '*';  add_header Access-Control-Allow-Credentials 'true';  return 204;  }  if ($request_method != 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:8080' always;  add_header Access-Control-Allow-Credentials 'true';  }  proxy_pass  http://localhost:59200;   }  
}  

或者

server {  listen       22222;  server_name  localhost;  location  / {  add_header Access-Control-Allow-Origin 'http://localhost:8080' always;  add_header Access-Control-Allow-Headers '*';  add_header Access-Control-Allow-Methods '*';  add_header Access-Control-Allow-Credentials 'true';  if ($request_method = 'OPTIONS') {  return 204;  }  proxy_pass  http://localhost:59200;   }  
}  

完整配置,有lua


#user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;#pid        logs/nginx.pid;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '#                  '$status $body_bytes_sent "$http_referer" '#                  '"$http_user_agent" "$http_x_forwarded_for"';#access_log  logs/access.log  main;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;#gzip  on;server {listen       80;server_name  localhost;location / {root   html;index  index.html index.htm;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}# 處理以 /api 開頭的請求location ^~ /main {if ($request_method = 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:5173';  add_header Access-Control-Allow-Headers '*';  add_header Access-Control-Allow-Methods '*';  add_header Access-Control-Allow-Credentials 'true';  return 204;  }  if ($request_method != 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:5173' always;  add_header Access-Control-Allow-Credentials 'true';  }access_by_lua_file "/usr/local/openresty/nginx/conf/lua/app.lua";# 將 /main 替換為空,只保留后續的路徑rewrite ^/main(.*)$ $1 break;proxy_pass http://127.0.0.1:9001;# proxy_pass http://127.0.0.1:42002;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}# 處理 /wbrjPys/static 的請求location ^~ /wbrjPys/static {rewrite ^/wbrjPys(.*)$ $1 break;proxy_pass http://127.0.0.1:9090;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}location ^~ /wbrjPys {if ($request_method = 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:5173';  add_header Access-Control-Allow-Headers '*';  add_header Access-Control-Allow-Methods '*';  add_header Access-Control-Allow-Credentials 'true';  return 204;  }  if ($request_method != 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:5173' always;  add_header Access-Control-Allow-Credentials 'true';  } access_by_lua_file "/usr/local/openresty/nginx/conf/lua/app.lua";# 將 /api 替換為空,只保留后續的路徑rewrite ^/wbrjPys(.*)$ $1 break;proxy_pass http://127.0.0.1:9090;# proxy_pass http://127.0.0.1:42002;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}location ^~ /myGoApp {if ($request_method = 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:5173';  add_header Access-Control-Allow-Headers '*';  add_header Access-Control-Allow-Methods '*';  add_header Access-Control-Allow-Credentials 'true';  return 204;  }  if ($request_method != 'OPTIONS') {  add_header Access-Control-Allow-Origin 'http://localhost:5173' always;  add_header Access-Control-Allow-Credentials 'true';  }access_by_lua_file "/usr/local/openresty/nginx/conf/lua/app.lua";# 將 /myGoApp 替換為空,只保留后續的路徑rewrite ^/myGoApp(.*)$ $1 break;proxy_pass http://127.0.0.1:8000;# proxy_pass http://127.0.0.1:42002;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}# another virtual host using mix of IP-, name-, and port-based configuration##server {#    listen       8000;#    listen       somename:8080;#    server_name  somename  alias  another.alias;#    location / {#        root   html;#        index  index.html index.htm;#    }#}# HTTPS server##server {#    listen       443 ssl;#    server_name  localhost;#    ssl_certificate      cert.pem;#    ssl_certificate_key  cert.key;#    ssl_session_cache    shared:SSL:1m;#    ssl_session_timeout  5m;#    ssl_ciphers  HIGH:!aNULL:!MD5;#    ssl_prefer_server_ciphers  on;#    location / {#        root   html;#        index  index.html index.htm;#    }#}}

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

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

相關文章

[特殊字符] 構建高內聚低耦合的接口架構:從數據校驗到后置通知的分層實踐

在現代企業系統開發中,接口結構設計的質量直接影響系統的穩定性、擴展性與可維護性。隨著業務復雜度上升,單一層次的接口實現往往難以應對功能膨脹、事務一致性、后置擴展等需求。因此,我們提出一種面向復雜業務場景的接口分層模型&#xff0…

MySQL 5.7 實戰:JSON 字段提取、Base64 解碼與引號問題全解析

一、背景與問題場景 在 MySQL 數據庫中,存儲 JSON 格式數據(如用戶行為日志、配置參數、擴展信息)的場景日益普遍。當需要從 JSON 字段中提取特定鍵值(如info)并進行 Base64 解碼時,常遇到以下問題&#x…

1.2.1+1.2.2計算機硬件的基本組成

知識總覽 早期馮諾依曼計算機:從人工-》自動 出現原因: 埃尼阿克計算機每執行一條指令都需要人工接線攬,雖然計算機處理的快,但是人工接線可能慢,效率低,于是出現馮諾依曼計算機,把要執行的指…

Spring AI 1.0 GA 正式發布

Spring AI 1.0 GA 正式發布 快速入門核心特性1. **增強型 LLM(大語言模型)**2. **MCP 協議支持**3. **RAG(檢索增強生成)**4. **評估與監控**5. **智能代理(Agents)** 下一步計劃 VMware Spring 團隊 Mark …

亞馬遜云科技推出Anthropic新一代模型

5月23日 亞馬遜云科技宣布在Amazon Bedrock中推出Anthropic的最新一代模型Claude Opus 4和Claude Sonnet 4。這兩款全新混合推理模型能夠根據需求在快速響應和深度思考模式間靈活切換,為編碼、高級推理和多步驟工作流領域帶來全新標準。它們不僅能在復雜的長時間推理…

無人機開啟未來配送新篇章

低空物流(無人機物流)是利用無人機等低空飛行器進行貨物運輸的物流方式,依托低空空域(通常在120-300米)實現快速、高效、靈活的配送服務。它是低空經濟的重要組成部分,廣泛應用于快遞配送、醫療物資運輸、農…

數據賦能(234)——數據管理——標準化原則

概述 標準化原則的重要性體現在確保數據的格式、結構和命名的一致性。這不僅可以提高數據的質量,還能促進數據的有效共享、交換和利用。以下是標準化原則的重要性的具體體現: 提高數據通用性:遵循數據標準和規范,確保不同系統、…

【Linux筆記】——線程池項目與線程安全單例模式

🔥個人主頁🔥:孤寂大仙V 🌈收錄專欄🌈:Linux 🌹往期回顧🌹: 【Linux筆記】——簡單實習一個日志項目 🔖流水不爭,爭的是滔滔不息 一、線程池設計二…

28-FreeRTOS內核控制-延時-臨界區

一、FreeRTOS的內核控制接口分析 1.1 函數taskYIELD 此函數用于進行任務切換,此函數本質上是一個宏。它允許當前任務主動放棄CPU使用權,將控制權轉移給調度器,以便調度器可以選擇另一個就緒任務運行。taskYIELD通常用于協作式多任務系統中&am…

NtfsLookupAttributeByName函數分析之和Scb->AttributeName的關系

第一部分: VOID FindFirstIndexEntry ( IN PIRP_CONTEXT IrpContext, IN PSCB Scb, IN PVOID Value, IN OUT PINDEX_CONTEXT IndexContext ) { 。。。。。。 // // Lookup the attribute record from the Scb. // if (!NtfsLookupAt…

關閉 Ubuntu 20.04 的 GNOME Shell和PulseAudio

一、GNOME Shell GNOME Shell 是 Ubuntu 20.04 默認的桌面環境管理器。關閉它會失去圖形界面(回到純終端模式),但可以節省內存和 CPU 資源。 方法 1:臨時關閉(當前會話生效) sudo systemctl stop gdm #…

Dijkstra算法——不帶負權的單源最短路徑

目錄 算法學習 算法原理 稠密圖Dijkstra模板 稀疏圖Dijkstra模板 練習 1 網絡延遲時間 2 到達最后一個房間的最少時間Ⅰ 3 到達最后一個房間的最少時間Ⅱ 4 訪問消失節點的最少時間 5 設計可以求最短路徑的圖類 6 概率最大的路徑 7 最小體力消耗路徑 8 從第一個節…

【安全攻防與漏洞?】??Heartbleed漏洞復現與修復

Heartbleed漏洞復現與修復 一、漏洞原理 Heartbleed漏洞(CVE-2014-0160) 是 OpenSSL 1.0.1 至 1.0.1f 版本中的一個嚴重內存泄漏漏洞。它源于 TLS 心跳擴展(Heartbeat Extension)協議中對請求長度字段的未校驗,導致攻…

力扣-最大連續一的個數

1.題目描述 2.題目鏈接 1004. 最大連續1的個數 III - 力扣&#xff08;LeetCode&#xff09; 3.代碼解答 class Solution {public int longestOnes(int[] nums, int k) {int zero0,length0;for(int left0,right0;right<nums.length;right){if(nums[right]0){zero;}while…

虛擬機Centos7:Cannot find a valid baseurl for repo: base/7/x86_64問題解決

問題 解決&#xff1a;更新yum倉庫源 # 備份現有yum配置文件 sudo cp -r /etc/yum.repos.d /etc/yum.repos.d.backup# 編輯CentOS-Base.repo文件 vi /etc/yum.repos.d/CentOS-Base.repo[base] nameCentOS-$releasever - Base baseurlhttp://mirrors.aliyun.com/centos/$relea…

Node.js 庫大全

在當今快速迭代的軟件開發領域&#xff0c;Node.js 憑借其強大的異步 I/O 處理能力和繁榮的生態系統&#xff0c;已成為全棧開發的核心技術。社區中涌現的無數實用庫&#xff0c;如同開發者手中的“瑞士軍刀”&#xff0c;能顯著提升效率、優化性能并保障安全。本文將系統梳理 …

如何評估物聯網框架的交互體驗?

物聯網&#xff08;IoT&#xff09;技術的快速發展推動了各類物聯網框架的涌現&#xff0c;但如何評估其交互體驗卻成為開發者和企業面臨的重要挑戰。交互體驗不僅涉及用戶界面&#xff08;UI&#xff09;的直觀性&#xff0c;還包括設備接入效率、協議兼容性、數據交互流暢度以…

3D個人簡歷網站 6.彈出框

3D個人簡歷網站 6.彈出框 在components下創建HomeInfo.jsx用于控制主頁彈出框信息 輸入rafce快速生成代碼塊 import React from reactconst HomeInfo () > {return (<div>HomeInfo</div>) }export default HomeInfo修改Home.jsx代碼實現彈出簡單效果 ……re…

在 ABP VNext 中集成 OpenCvSharp:構建高可用圖像灰度、壓縮與格式轉換服務

&#x1f680; 在 ABP VNext 中集成 OpenCvSharp&#xff1a;構建高可用圖像灰度、壓縮與格式轉換服務 &#x1f389; &#x1f4da; 目錄 &#x1f680; 在 ABP VNext 中集成 OpenCvSharp&#xff1a;構建高可用圖像灰度、壓縮與格式轉換服務 &#x1f389;&#x1f3af; 一、…

C++之STL--string

string 深入探索 C STL 中的 std::string一、std::string 的基本概念1. 內存管理2. 安全性 二、std::string 的構造與初始化1. 默認構造2. 從 C 風格字符串構造3. 從字符串的一部分構造4. 使用重復字符構造 三、std::string 的常用操作1. 字符串拼接2. 字符串比較3. 字符串查找…