nginx部分错误处理记录

#nginx

nginx 映射到外网不同端口,登录跳转端口丢失问题

解决办法,在location加入以下内容即可。

……
proxy_set_header        Host $host:12080;	# 12080根据实际端口修改
……

如果可能,尽量内外网端口一至,可以避免内网访问登录后跳转会带上外网端口


解决nginx使用proxy_pass隐式反向代理导致部分js文件无法显示问题

问题描述: 访问反代时,js或图片无法正常加载,因为源站的部分资源路径并非全是从/开始的相对路径, 例如访问<www.a.com/xyz> 实际内容为从<www.b.com/api/xyz> 反向代理过来 访问时会出现<www.a.com/api/js/x.js> <www.a.com/api/img/x.png> 等图片无法访问,

问题解决思路,在浏览器通过F12打开开发工具,查看加载失败的文件类型,一般都是js css 和图片。通过正则,将js png 或css 等其它路径无法正常显示的资源匹配出来做重定向即可

server {
	listen       80;
	server_name  www.a.com;
	location / {
		proxy_pass http://www.b.com/api/;
	}

	# 对无法显示的静态资源进行重新代理
	location ~.*.(js|css|png|jpg|jpeg|gif)$ {
		proxy_pass http://www.b.com;
	}

}

未验证 absolute_redirect off;


failed (13: Permission denied) while connecting to upstream…

问题原因:权限问题,切换nginx.conf中的user或检查linux系统的selinx配置是否忘了关闭


"Primary script unknown" while reading response header from upstream

最后更新于