2021年3月24日 星期三

Access-Control-Allow-Origin

跨來源資源共用(CORS)

Mozilla 這邊文章寫得很詳細
簡單講當 User 去連 A 站,裡面的 AJAX 動作去 call B 站的資料,B 站就必需在 HTTP header 裡加入 Access-Control-Allow-Origin: *
使用完整 Source 路徑會更好,例如 Access-Control-Allow-Origin: https://blog.pank.org
Access-Control-Allow-Methods: 預設有 GET, HEAD, POST
所以在大部份的情況都不需要加

加入 Access-Control-Allow-Origin: * 大至上有兩個方法,從後端程式或 Web Server 端

後端程式,以 PHP 為例:
header('Access-Control-Allow-Origin: *');

Web Server 端,以 Apache 為例:
Header set Access-Control-Allow-Origin *
(也可以加在 .htaccess)

以 nginx 為例:
add_header 'Access-Control-Allow-Origin' '*'

沒有留言:

Protect static files with Apache mod_xsendfile

網頁中的 Static files,若要經過驗證才能存取, 以 PHP 為例, 第一種做法是將檔案放在 DocumentRoot 以外的目錄,程式先檢查驗證,然後再用 readfile 讀檔吐出去 第二種做法是本文要介紹的 mod_xsendfile,一樣是將檔案放在 Docum...