nginx 号称支持高负载的 http 服务器。上次安装 nginx 就是因为 php 老是装不上,来回折腾源、编译等,导致新利得出错。。。这次再次折腾,终于搞定,步骤如下:
安装 php+phpmyadmin
sudo apt-get install php5-cli php5-cgi php5-mysql
sudo apt-get install phpmyadmin
mysql
sudo apt-get install mysql-server
默认无密码,可以这样修改
以下为引用内容:
/etc/init.d/mysql stopThen update the user table
mysqld –skip-grant-tables –skip-networking &
mysql mysql
UPDATE user SET password=PASSWORD(’yourrootpassword’) WHERE User=”root” AND Host=”localhost”;
quit
/etc/init.d/mysql restart
也可以在 phpmyadmin 中修改。
安装 nginx
wget http://technokracy.net/nginx/nginx_0.5.32~grrr-1_i386.deb
dpkg -i nginx_0.5.32~grrr-1_i386.deb
修改 nginx 配置文件
sudo vim /etc/nginx/sites-available/default
找到 location ~ \.php$ {… 部分,修改为
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
让 nginx 侦听 9000 端口,用 spawn-fcgi 方式运行 php。
安装 spawn-fcgi。用 lighttpd 中的 spawn-fcgi。
wget http://www.lighttpd.net/download/lighttpd-1.4.18.tar.bz2
tar -xvjf lighttpd-1.4.18.tar.bz2
cd lighttpd-1.4.18
./configure
make
cp src/spawn-fcgi /usr/bin/spawn-fcgi
注意:并没有安装 lighttpd,只是拿出里面的 spawn-fcgi。(make 而没有 install)
安装 php-fastcgi
touch /usr/bin/php-fastcgi
sudo vim /usr/bin/php-fastcgi
sudo chmod 755 /usr/bin/php-fastcgi
添加如下内容
#!/bin/sh
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www-data -f /usr/bin/php5-cgi
新建 init-fastcgi
touch /etc/init.d/init-fastcgi
sudo vim /etc/init.d/init-fastcgi
内容为
#!/bin/bash
PHP_SCRIPT=/usr/bin/php-fastcgi
RETVAL=0
case “$1″ in
start)
$PHP_SCRIPT
RETVAL=$?
;;
stop)
killall -9 php
RETVAL=$?
;;
restart)
killall -9 php
$PHP_SCRIPT
RETVAL=$?
;;
*)
echo “Usage: php-fastcgi {start|stop|restart}”
exit 1
;;
esac
exit $RETVAL
修改 fcgi 的执行权限
chmod 755 /etc/init.d/init-fastcgi
开机后自动启动
update-rc.d init-fastcgi defaults
写一个 .php文件测试。
注意:如果安装过 apache 的话,nginx 会启动在 8000 端口。在 /etc/nginx/sites-available/default 中修改为 80
server {
listen 80;
…
重启nginx
sudo /etc/init.d/nginx restart
BTW:相比之下还是 lighttpd 的文档多一些,效率也不错。nginx 到底如何,用用再说。
Popularity: 24% [? ]