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数据库连接.';
 ?>

hellowoody
118 声望10 粉丝

个人网站:woodyhello.com