Nginx指定多个域名跨域配置

Nginx配置域名跨域单个域名:


location ~ .*\.(php|php5)?$
        {
                add_header 'Access-Control-Allow-Origin' 'http://image1-oss.v.lvye.com';
                add_header 'Access-Control-Allow-Credentials' 'true' always;
                add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range,hyperf-session-id,X-Token';
                fastcgi_pass  127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi.conf;
                
        }


Nginx配置域名跨域多个域名:


server {
    set $core_origin "";
        if ($http_origin ~* "^http://image1-oss.xxx.xxx.com$") {
            set $core_orgin $http_origin;
        }        if ($http_origin ~* "^http://www.xxx.cn$") {
            set $core_orgin $http_origin;
        }        if ($http_origin ~* "^http://www.xxx.cn$") {
            set $core_orgin $http_origin;
        }
    listen       80;    ......
    ......
    location ~ .*\.(php|php5)?$
        {
                proxy_set_header Host $http_host;
                add_header 'Access-Control-Allow-Origin' $core_orgin;
                add_header 'Access-Control-Allow-Credentials' 'true' always;
                add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range,hyperf-session-id,X-Token';
                fastcgi_pass  127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi.conf;
        }



多个域名只需要添加 if 配置不同的域名即可;

需要注意的是 if 与括号之间的空格不能删除,删除会报语法错误。

还有location 中要添加相对应的变量和参数。


鼎云博客
  • 最新评论
  • 总共0条评论