一下午啊一下午!!!
找盡原因!!!
nginx和php裝好,配置好,各種優化,完成之后,網站就是無法打開,怎樣調試,怎么訪問都是無響應,都是報499錯誤
access.log
x.x.x.x - - [11/Nov/2012:14:55:57 +0400] "GET / HTTP/1.1" 499 0 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
error.log
2012/11/11 15:07:46 [info] 20091#0: *74 client prematurely closed connection while reading client request line, client: x.x.x.x, server: localhost 2012/11/11 15:07:56 [info] 20091#0: *76 client prematurely closed connection while reading client request line, client: x.x.x.x, server: localhost
最后還重新編譯的nginx,加上了debug,幾次重試之后,發現error.log里有這么一句:
2012/11/11 15:04:32 [error] 20091#0: *69 connect() failed (110: Connection timed out) while connecting to upstream, client: x.x.x.x, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "x.x.x.x"
注意那個Connection time out,光看這,你可能會直接去查php-fpm的日志,你會發現什么都沒有,一切正常,但是就是連不上9000端口,但我一直覺得是php或者nginx的問題,又將平台轉移到本地(前面是我買的vps)虛擬機,將配置文件導入,打開,一切ok啊……
直接說了吧,最后以關鍵字Connection time out在Google查了一下,“http://houwenhui.gotoip2.com/archives/1621” 看了這哥們兒的blog,才恍然大悟……
其實是iptables的問題,我用的ubuntu平台,沒有iptable的默認策略,后來我自己加的策略,也都只是針對外網的,啟動之后,本機內的環回借口通訊被阻擋了,但是本地的centos就不同,因為有默認的策略,本身就有這條,行了,這一下午也沒白費……最后在iptables加入:
iptables -A INPUT -i lo -j ACCEPT
一切搞定……