1、删除Karmic及php(此步骤是因为我曾经由PHP5.3降级到5.2,正常用户忽略)
sudo rm /etc/apt/sources.list.d/karmic.list
sudo rm /etc/apt/preferences.d/php
2、更新ubuntu10.10的源,10.10已过支持服务期限
修改源文件:sources.list,将内容更改为:
deb http://old-releases.ubuntu.com/ubuntu maverick main universe restricted multiverse
deb-src http://old-releases.ubuntu.com/ubuntu maverick main universe restricted multiverse
deb http://old-releases.ubuntu.com/ubuntu maverick-security universe main multiverse restricted
deb-src http://old-releases.ubuntu.com/ubuntu maverick-security universe main multiverse restricted
deb http://old-releases.ubuntu.com/ubuntu maverick-updates universe main multiverse restricted
deb-src http://old-releases.ubuntu.com/ubuntu maverick-updates universe main multiverse restricted
3、更新源,添加apt-add功能
sudo apt-get update
sudo apt-get install python-software-properties
4、删除旧有的PHP5.3
sudo apt-get remove --purge php*
sudo apt-get autoremove
5、删除旧有apache2.2
sudo apt-get remove apache2
sudo apt-get autoremove
6、添加PPA的NGINX源
sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
ssudo apt-get install nginx
sudo service nginx start
第一次无法启动,显示80端口被占用,需要禁用ipv6
sudo vi /etc/nginx/sites-available/default
在listen [::]:80 前面加上一个#号,然后重启即可
7、添加PPA的PHP5.4源(特别注意这一点,看能否导入1个key,如果不能导入,安装还是默认的php5.3,那就需要执行后面的说明了)
sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
8、安装PHP5.4
sudo apt-get install php5-fpm php5-cgi php5-mysql php5-curl php5-mcrypt php-pear php5-gd php-apc
运行php5 -v,查看PHP的版板为5.4.17
重要提示:
因为ubuntu 10.10已经过了服务期,在ppa上面有10.04的PHP5.4源,但没有10.10的5.4源,如果采用add功能无法添加的,需要手动添加php5.4源
新建文件lucid.list
添加如下:
deb http://ppa.launchpad.net/ondrej/php5/ubuntu lucid main
deb-src http://ppa.launchpad.net/ondrej/php5/ubuntu lucid main
上传到/etc/apt/sources.list.d目录
导入密钥
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E5267A6C
sudo apt-get update
sudo apt-get install php5
即可以ubuntu10.10中使用lucid源来安装php5.4
同样的方法,在ondrej源中也有nginx1.4的最新源,所以我也尝试用此方法安装nginx1.4,不能启动,网络上面说有可能是签名的问题
我也懒得搞,直接就添加了nginx的官方ppa源,安装的nginx1.2,稳定,步骤如上
PHP.INI的位置在/etc/php5/fpm/php.ini
安装版本:nginx 1.2.7 , PHP:5.4.17RC1