例1.直接配置PHP-FPM
把VPS的Lenny5换成了Ubuntu10.04,借这个机会试一下效率更高的 PHP-FPM 。
以下是fabric脚本:
代码如下 | 复制代码 |
def init_nmp(): |
在/etc/php5/fpm/php5-fpm.conf里将tcp修改成unix socket方式,单机情况下性能更好。
代码如下 | 复制代码 |
listen = /var/run/php5-fpm.sock |
Nginx里的配置:
代码如下 | 复制代码 |
location ~ .php$ { |
例2.如果你是全新安装没有nginx,php环境我们可以参考下面实例
1,安装nginx
代码如下 | 复制代码 |
sudo apt-get install nginx |
2,安装 phpy + php-fpm + 其他模块:
代码如下 | 复制代码 |
apt-get install php5-fpm php5-cgi php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json php5-suhosin php5-common php-apc php5-dev libpcre3-dev |
3,配置 php:
代码如下 | 复制代码 |
sudo vi /etc/php5/fpm/php.ini |
设置
代码如下 | 复制代码 |
cgi.fix_pathinfo=0 |
4,创建文件
代码如下 | 复制代码 |
mkdir /home/www |
修改文件权限
代码如下 | 复制代码 |
|
5,修改 nginx 虚拟主机设置:
代码如下 | 复制代码 |
sudo vi /etc/nginx/sites-available |
内容,我这里 IPv4 和 IPv6 用了两条独立的命令监听,原因见这里。
代码如下 | 复制代码 |
server { #listen [::]:80; listen 80; server_name xxx.xxxxx.xxx; root /home/www/; #access_log /var/log/nginx/xxx-access.log; #error_log /var/log/nginx/xxx-error.log; location / { index index.php index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # #error_page 500 502 503 504 /50x.html; #location = /50x.html { # root /home/www/nginx-default; #} location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; } location ~ /.ht { deny all; } } |
6,修改 fastcgi 参数,
代码如下 | 复制代码 |
sudo vi /etc/nginx/fastcgi_params |
加入:
代码如下 | 复制代码 |
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; |
7,重新启动 nginx 和 php-fpm,配置完成:
代码如下 | 复制代码 |
sudo /etc/init.d/nginx restart sudo /etc/init.d/php5-fpm reload |