nginx Access-Control-Allow-Origin 多域名跨域設置


2019-1-16 12:24:15 星期三

網站的靜態文件(js, css, 圖片, 字體等)是在一個單獨的域名下的, 為了防止非法訪問, 給nginx添加了跨域的控制, 也可以在PHP代碼中添加

nginx指令: add header

1. 在location塊中, 判斷當前來源的域名($http_origin)是不是符合條件,

2. 符合條件的話就用add_header指令設置 Access-Control-Allow-Origin

 

    location ~ \.ico|jpg|gif|png|js|css|woff2|ttf$ {
        if ($http_origin ~ [a-z]+\.hearu\.top$){ # xxx.hearu.top域名才可以訪問
            add_header Access-Control-Allow-Origin $http_origin;
            add_header Access-Control-Request-Method GET;
        }
        root /usr/local/...../ui; #存放靜態文件的路徑
        #expires 1h;
    }

 

 

nginx if 指令參考: 連接

1、正則表達式匹配:

==:等值比較;

~:與指定正則表達式模式匹配時返回“真”,區分字符大小寫;

~*:與指定正則表達式模式匹配時返回“真”,不區分字符大小寫;

!~:與指定正則表達式模式不匹配時返回“真”,區分字符大小寫;

!~*:與指定正則表達式模式不匹配時返回“真”,不區分字符大小寫;

 

2、文件及目錄匹配判斷:

-f, !-f:判斷指定的路徑是否為存在且為文件;

-d, !-d:判斷指定的路徑是否為存在且為目錄;

-e, !-e:判斷指定的路徑是否存在,文件或目錄均可;

-x, !-x:判斷指定路徑的文件是否存在且可執行;

 

硬廣: 模塊化, 輕量級PHP框架


免責聲明!

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



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