Ubuntu 12.10

听闻今天Ubuntu出了新版本12.10,立马就去升级。

官方有个如何升级的指南。我用的是在Linode上的12.04 LTS,按照官方指南,用

do-release-upgrade

升级不了,显示没有最新版,其实应该加一个’-d’的参数表示升级到最新的开发版。

do-release-upgrade -d

升级成功后别的都一切正常,但是php出了问题,进blog后nginx提示502错误。请教一番Google大神后,原来,从12.10版本起php5-fpm开始监听UNIX domain socket而不是之前127.0.0.1:9000端口的TCP请求。因为既然作为一台web服务器,大部分情况下PHP和Nginx是跑在一台机器上,用UNIX socket使用文件传递数据的方式反而更方便,所以之后就使用UNIX domain socket作为默认的配置。升级之后,nginx的网站配置却并没有变,FastCGI仍在监听127.0.0.1:9000,所以找到fastcgi_pass的选项,更改成unix:/var/run/php5-fpm.sock 就行。

vim /etc/nginx/sites-available/yourwebsites

当然,你也可以更改php-fpm的配置,让其仍然监听在127.0.0.1:9000端口上。

vim /etc/php5/fpm/pool.d/www.conf

找到listen这个选项,改成127.0.0.1:9000就行。

最后,记得重启nginx服务或者php-fpm。

另外,这篇文章非常详细地解释了UNIX domain socket和TCP socket的区别,推荐阅读。

咦,最近这首歌的旋律总是回荡在我脑子里,尽管昨晚看了Led Zeppelin的电影。

Leave a Reply

Your email address will not be published. Required fields are marked *