标签:
尽管Apache已经占据半片江山,但很多人仍然在寻找其他的方式去托管他们的站点,Apache不只是一个选择,其他很多优秀的服务器程序例如lighthttp和nginx也是不错的选择。本教程将要向您展现如何在Ubuntu操作系统上面安装,教程同样适用在Debian,尽管有一点点小差别,但并没有太大影响。怎么样,下面我们开始吧。
0.开始注意
为了完成教程中提到的操作,我们假设您已经安装了一个基本的Debian或者Ubuntu操作系统。怎么安装系统这是不同的教程了,这里就不再详细说明。本教程主要介绍如何简单获取Nginx+php的运行环境。
1.安装Nginx
第一步要做的就是从库中下载,这个操作是非常简单的。
sudo apt-get install nginx
更改默认的虚拟站点配置,文件在:
sudo vim /etc/nginx/sites-available/default
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/localhost.access.log;
## Default location
location / {
root /var/www;
index index.php;
}
## Images and static content is treated different
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
access_log off;
expires 30d;
root /var/www;
}
## Parse all .php file in the /var/www directory
location ~ .php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass backend;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
include fastcgi_params;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
## Disable viewing .htaccess & .htpassword
location ~ /\.ht {
deny all;
}
}upstream backend { server 127.0.0.1:9000;}
好了,我们完成到这里,下面我们需要安装PHP所需要的文件。
cd /tmp
wget http://us.archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_i386.deb
wget http://us.archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8-6ubuntu0.2_i386.deb
sudo dpkg -i *.deb
再次说明,这个只需要在Ubuntu上面操作就可以了,如果是最新版本的12.04可以省略掉这个。
sudo echo "deb http://php53.dotdeb.org stable all" >> /etc/apt/sources.list
更新apt:
sudo apt-get update
下面我们开始安装PHP(第一部分)
sudo apt-get install php5-cli php5-common php5-suhosin
我们需要安装命令行,不然接下来就会出现些小问题
sudo apt-get install php5-fpm php5-cgi
如果你打算使用数据库或者一些需要的模块(例如:mcrypt,ldap,snmp等)你同样可以安装他们。
sudo /etc/init.d/nginx restart
配置完成php.ini后需要重启php5-fpm,使用命令
sudo /etc/init.d/php5-fpm restart
全部完成,你可以运行了。
<?php phpinfo(); ?>
通过浏览器访问,你可以看到php的一个大致的信息,如果没有则说明一些配置错误,需要重新检查。
sudo tail /var/log/nginx/error.log
查看错误日志,另外每次当你修改了php.ini后,需要重启php5-fpm。无需重启nginx。
标签:
原文地址:http://my.oschina.net/somereasons/blog/415255