Initial commit: Open sourcing all of the Maple Open Technologies code.
This commit is contained in:
commit
755d54a99d
2010 changed files with 448675 additions and 0 deletions
51
cloud/infrastructure/development/nginx/seaweedfs-cors.conf
Normal file
51
cloud/infrastructure/development/nginx/seaweedfs-cors.conf
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
server {
|
||||
listen 8334;
|
||||
server_name localhost;
|
||||
|
||||
# Map to dynamically set CORS origin based on request
|
||||
# This allows multiple localhost ports for development
|
||||
set $cors_origin "";
|
||||
if ($http_origin ~* "^http://localhost:(5173|5174|5175|3000|8080)$") {
|
||||
set $cors_origin $http_origin;
|
||||
}
|
||||
|
||||
# Proxy to SeaweedFS S3 endpoint
|
||||
location / {
|
||||
# Hide CORS headers from upstream SeaweedFS (to prevent duplicates)
|
||||
proxy_hide_header 'Access-Control-Allow-Origin';
|
||||
proxy_hide_header 'Access-Control-Allow-Methods';
|
||||
proxy_hide_header 'Access-Control-Allow-Headers';
|
||||
proxy_hide_header 'Access-Control-Expose-Headers';
|
||||
proxy_hide_header 'Access-Control-Max-Age';
|
||||
proxy_hide_header 'Access-Control-Allow-Credentials';
|
||||
|
||||
# CORS Headers for development - dynamically set based on request origin
|
||||
add_header 'Access-Control-Allow-Origin' $cors_origin always;
|
||||
add_header 'Access-Control-Allow-Methods' 'GET, PUT, POST, DELETE, HEAD, OPTIONS' always;
|
||||
add_header 'Access-Control-Allow-Headers' '*' always;
|
||||
add_header 'Access-Control-Expose-Headers' 'ETag, Content-Length, Content-Type' always;
|
||||
add_header 'Access-Control-Max-Age' '3600' always;
|
||||
|
||||
# Handle preflight requests
|
||||
if ($request_method = 'OPTIONS') {
|
||||
add_header 'Access-Control-Allow-Origin' $cors_origin always;
|
||||
add_header 'Access-Control-Allow-Methods' 'GET, PUT, POST, DELETE, HEAD, OPTIONS' always;
|
||||
add_header 'Access-Control-Allow-Headers' '*' always;
|
||||
add_header 'Access-Control-Max-Age' '3600' always;
|
||||
add_header 'Content-Type' 'text/plain; charset=utf-8' always;
|
||||
add_header 'Content-Length' '0' always;
|
||||
return 204;
|
||||
}
|
||||
|
||||
# Proxy to SeaweedFS
|
||||
proxy_pass http://seaweedfs:8333;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Important for large file uploads
|
||||
proxy_request_buffering off;
|
||||
client_max_body_size 1G;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue