Force nginx to send specific Content-Type
NginxHttp HeadersContent TypeNginx Problem Overview
How to overwrite default Content-Type in nginx? Currently when I request 01.dae file, there's
Content-Type: application/octet-stream;
And I want it to be
Content-Type: application/xml;
I tried something like
location ~* \.dae$ {
types { };
default_type application/xml;
}
and
location ~* \.dae$ {
add_header Content-Type application/xml;
}
but nothing works.
Nginx Solutions
Solution 1 - Nginx
In case you have no file extension:
location ~ something {
default_type application/xml;
}
In case you are setting up let's encrypt certificate with a client which creates http server: https://stackoverflow.com/questions/40502926/how-to-use-golang-lego-lets-encrypt-client-behind-nginx
Solution 2 - Nginx
You can edit /etc/nginx/mime.types
and add it
types {
application/xml dae;
}
I haven't found the the exact string application/xml
in my mime.types
so I suppose you can directly include it inside your server block, in the server scope or something.
Solution 3 - Nginx
Add "the application/xml dae;" to your server scope or location scope. Or add it into the mime.type.
Both of them work for me.