不使用 IPFS 原先的 URL,要使用 nginx 代理的作法。
為什麼要代理 IPFS? 這是因為 IPFS 基本上 Deployment 都可以對外,誰都可以對你的 IPFS 做 Deployment,所以需要上鎖白名單,只允許內部可以訪問 IPFS,加強安全性。
它的 Nginx config 是這樣寫的:
# create command: graph create --node http://host_name/ipfs/ XXXXX # for IPFS location /ipfs { proxy_pass http://localhost:8020; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; allow all; } # deploy command: graph deploy --node http://host_name/ipfs/ --ipfs http://host_name/ipfs-deploy/ XXXXXX # for IPFS # http://localhost:5001/api/v0/add <- should use the previous path form /v0 let nginx can allow any argument location /ipfs-deploy/api/v0 { proxy_pass http://localhost:5001/api/v0; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; allow all; }
這兩段 Router 應該要區分成不同網址,不要都放在 /ipfs 下,一個是給 create 指令使用的,另一個是給 deployment 使用的。
沒有留言:
張貼留言