![带有 proxy_pass 的 Nginx 内容类型](https://linux22.com/image/741917/%E5%B8%A6%E6%9C%89%20proxy_pass%20%E7%9A%84%20Nginx%20%E5%86%85%E5%AE%B9%E7%B1%BB%E5%9E%8B.png)
我目前使用:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server_tokens off;
upstream webapp {
server 127.0.0.1:3000;
}
server {
listen 80;
location / {
proxy_pass http://webapp;
proxy_redirect off;
proxy_hide_header Content-Type;
}
}
}
上游是一个 nodejs 应用程序,它提供一堆 .js 文件,由于它们都没有内容类型,因此导致客户端错误Failed to load module script: The server responded with a non-JavaScript MIME type of "". Strict MIME type checking is enforced for module scripts per HTML spec.
。
我试图删除代理标头,希望 nginx-proxy 能够从 mime.types(存在)中自动添加内容类型。
答案1
已解决,但proxy_pass_header Content-Type;
不知道为什么 nginx 会隐藏标头。