文章

Ubuntu 9.04 Nginx+php+mysql

由于Ubuntu 9.04已经包含了nginx,所以根本不要编译,安装超简单!

修改/etc/apt/sources.list文件内容为国内镜像,然后运行:

apt-get update apt-get install nginx

即可完成安装。启动nginx:

/etc/init.d/nginx start

然后就可以访问http://localhost/了,一切正常!如果不能访问,先不要继续,看看是什么原因,解决之后再继续。 安装php和MySQL:

apt-get install php5-cli php5-cgi mysql-server-5.0 php5-mysql spawn-fcgi

修改nginx的配置文件:/etc/nginx/sites-available/default

修改 server_name 为你的hostname;

修改index的一行修改为:

index index.php index.html index.htm;

去掉下面部分的注释:

location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name; include /etc/nginx/fastcgi_params; }

重新启动nginx:

/etc/init.d/nginx stop /etc/init.d/nginx start

启动fastcgi php:

spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi

为了让php-cgi开机自启动:

cd /etc/init.d cp nginx php-cgi vim php-cgi

替换nginx为php-cgi并修改相应部分为:

DAEMON=/usr/bin/spawn-fcgi DAEMON_OPTS="-a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi" … stop) echo -n "Stopping $DESC: " pkill -9 php-cgi echo "$NAME."

然后运行rcconf设置php-cgi为开机自启动

/var/www/nginx-default/目录下创建一个文件:

echo '' > /var/www/nginx-default/index.php

最后用浏览器测试是否能够解析php脚本。一切OK。为了优化和缓存php,我们需要安装eAccelerator,安装必须还有开发工具,开发库已经PHP5-DEV。

apt-get install build-essential php5-dev
wget http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2 tar xvf eaccelerator-0.9.6.1.tar.bz2 cd eaccelerator-0.9.6.1 phpize ./configure –enable-eaccelerator=shared –with-php-config=/usr/bin/php-config make && make install mkdir /var/cache/eaccelerator chown www-data.www-data /var/cache/eaccelerator

编辑/etc/php5/cgi/php.ini,在最后添加内容:

[eaccelerator] extension="eaccelerator.so" eaccelerator.shm_size="16" eaccelerator.cache_dir="/var/cache/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"

最后重启nginx和php-cgi.

本文由作者按照 CC BY 4.0 进行授权