1.我用的阿里云上的debian6服务器,默认安装了php5.3.3。但没有安装php-cgi和php-fpm等模块,因为我在windows测试环境上配nginx和php时用到fastcgi模块,所以我一上来就想按章php-cgi,但是执行apt-get install php5-cgi报错。折腾一上午后,我修改了/etc/apt/source.list源文件,加上如下源:
deb http://mirrors.163.com/debian/ wheezy main non-free contrib deb http://mirrors.163.com/debian/ wheezy-proposed-updates main non-free contrib deb-src http://mirrors.163.com/debian/ wheezy main non-free contrib deb-src http://mirrors.163.com/debian/ wheezy-proposed-updates main non-free contrib
然后再安装php-cgi和php-fpm,就成功了。。。
2.安装php后,安装原有经验应该用php-cgi启动php,但是输入php-cgi -b 127.0.0.1:9000,系统报错如下:
HP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525+lfs/suhosin.so' - /usr/lib/php5/20100525+lfs/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
然后上网查询错误原因,其中有一篇提到可以执行:
aptitude purge php5-suhosin
果然php成功启动。
3.nginx和php已经成功安装并成功发布,现在需要连接数据库。安装windows环境下的经验,需要修改php.ini。结果发现在linux下配置方式不同,需要先安装php5-mysql,安装成功后,可以用下面的代码测试php是否成功连接mysql
<?php header("Content-type:text/html;charset=utf-8"); echo '开始mysql数据库连接.<br>'; $con = mysql_connect("localhost","root","root"); if($con){ echo '连接mysql数据库成功.<br>'; }else{ die('连接mysql数据库失败:' . mysql_error()); } mysql_close($con); echo '关闭mysql数据库连接.'; ?>