新配置的nginx,做proxy转发时遇到错误,页面无法打开,access日志中报502错误,从nginx可以curl到后端页面,经查error日志,发现如下报错
2015/12/28 16:42:00 [crit] 1850#0: *1 connect() to 192.168.1.1:8080 failed (13: Permission denied) while connecting to upstream, client: ***.***.***.***, server: *****.com, request: "GET /favicon.ico HTTP/1.1", upstream: "http://*******", host: "tl.cm-inf.com", referrer: "http://*******"
可以看出,错误中提示 Permission denied ,但nginx是可以curl出结果的,初步判断为selinux的问题,解决方法如下:
- 关闭selinux
调整selinux配置,在终端执行以下命令:
setsebool -P httpd_can_network_connect 1
推荐使用第二种方法,selinux尽量不要一刀切关掉,在安全方面还是非常有用的。