Nginx 反向代理設置,偽靜態可能導致反向代理不生效


遇到跨域的問題:has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header

想用nginx的反向代理解決。

將 /api/ 目錄的訪問, 轉發到 https://www.bdtest.com/api/

配置:

location ^~ /api/ {
        proxy_pass  https://www.bdtest.com/api/; 
  
        proxy_set_header Host $proxy_host; # 改變請求頭值
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;
}

如果用 thinkp 之類的框架,設了偽靜態

 

 

偽靜態還要加 一條規則:

if (!-e $request_filename) {
  rewrite ^/api/(.*)$ /api/$1 last;
  rewrite ^(.*)$ /index.php?s=$1 last;
  break;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM