nginxnginx-unit

Nginx uinit cors


I want to handle cors on nginx unit level but I don't know how it make on nginx unit. Example config for nginx

if ($request_method = 'OPTIONS') {
            add_header 'Access-Control-Allow-Origin' '*';
            add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, OPTIONS, DELETE, PATCH';
            add_header 'Access-Control-Allow-Headers' 'Authorization,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range';
            add_header 'Access-Control-Expose-Headers' 'Gc-Export-Errors';
            return 204;
        }

How I can do this for nginx unit?


Solution

  • Currently, Nginx Unit doesn't support functionality equal to add_header so if you need custom headers for 204 response it should be done using application. And configuration will looks like this:

    
    {
       "match":{
          "method": "OPTIONS"
       },
       "action":{
          "proxy": "path/to/app_return_204_with_custom_headers"
       }
    }