IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置: 首页服务器WEB服务器 → FreeBSD下nginx并支持php配置详解

FreeBSD下nginx并支持php配置详解

时间:2015-06-28 00:00:00 来源:IT猫扑网 作者:网管联盟 我要评论(0)

Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。

Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,其中包括新浪博客、新浪播客、网易新闻等门户网站频道,六间房、56.com等视频分享网站,Discuz!官方论坛、水木社区 等知名论坛,豆瓣、YUPOO相册、海内SNS、迅雷在线等新兴Web 2.0网站。

现在就就来学习在freebsd7.0中安装及配置nginx,这里只是把apache换成nginx,其他php等都不变:

一、安装nginx 0.6.33

[root@bsd01 ~]#cd /usr/ports
[root@bsd01 ports]#make search key=^nginx

Port: nginx-0.6.32_1
Path: /usr/ports/www/nginx
Info: Robust and small WWW server

Port: nginx-devel-0.7.21
Path: /usr/ports/www/nginx-devel
Info: Robust and small WWW server

freebsd上有2个,一个0.6.33(这里查询显示nginx-0.6.32_1)是稳定版,0.7.21是最新的开发版,所以这里安装0.6.33。

[root@bsd01 ports]#cd www/nginx
[root@bsd01 nginx]#make install clean

接着出来"make config"的菜单,选择需要的组件即可:

Options for nginx 0.6.33
─────────────────────────────────────
[ ] DEBUG Enable nginx debugging
[ ] GOOGLE_PERFTOOLS Enable google perftools module
[X] HTTP_MODULE Enable HTTP module
[X] HTTP_ADDITION_MODULE Enable http_addition module
[X] HTTP_DAV_MODULE Enable http_webdav module
[X] HTTP_FLV_MODULE Enable http_flv module
[X] HTTP_PERL_MODULE Enable http_perl module
[X] HTTP_REALIP_MODULE Enable http_realip module
[X] HTTP_REWRITE_MODULE Enable http_rewrite module
[X] HTTP_SSL_MODULE Enable http_ssl module
[X] HTTP_STATUS_MODULE Enable http_stub_status module
[X] HTTP_SUB_MODULE Enable http_sub module
[ ] MAIL_MODULE Enable IMAP4/POP3/SMTP proxy module
[ ] MAIL_IMAP_MODULE Enable IMAP4 proxy module
[ ] MAIL_POP3_MODULE Enable POP3 proxy module
[ ] MAIL_SMTP_MODULE Enable SMTP proxy module
[ ] MAIL_SSL_MODULE Enable mail_ssl module
[X] WWW Enable html sample files

tab到OK,开始安装。

安装完后,配置目录位于/usr/local/etc/nginx内,这个是freebsd的规则了,闭着眼睛都知道。主配置文件就是nginx.conf。

由于前面已经安装了php这些,这里就不用安装了,只要把php配置到nginx上就可以了。为了测试,我也把apache先停了,以免冲突。

nginx目前还不能直接支持php,必须先借助于fastcgi来驱动php。现在fastcgi较好的办法有2种,一个是spawn-fcgi,另外一个就是php-fpm,一般来说可能php-fpm更强大一点,但是spawn-fcgi也有相当数量的人在使用,所以就看自己习惯了。所以我2个都做了一遍。

#p#副标题#e#

二、使用spawn-fcgi支持php

▼首先需要安装lighttpd,以取得spawn-cgi

[root@bsd01 ~]#cd /usr/ports/www/lighttpd
[root@bsd01 lighttpd]#make install clean

▼编辑nginx.con文件:

[root@bsd01 ~]#vi /usr/local/etc/nginx/nginx.conf

user nobody;
user www;
location / {
root /usr/local/www/nginx;
index index.html index.htm;
}

location / {
root /data1/www;
index index.html index.htm index.php;
}

#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}

location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data1/www$fastcgi_script_name;
include fastcgi_params;
}

#location ~ /\.ht {
# deny all;
#}

location ~ /\.ht {
deny all;
}

▼现在用spawn-fcgi启动php-cgi进程:

[root@bsd01 lighttpd]#spawn-fcgi -a 127.0.0.1 -p 9000 -u www -C 3 -f /usr/local/bin/php-cgi
Kspawn-fcgi.c.206: child spawned successfully: PID: 25354

"-C 3"就是启动3个php-cgi进程吧,但是好像实际会多1,2个。

相关阅读

文章评论
发表评论

热门文章 ISAPI Rewrite实现IIS图片防盗链 ISAPI Rewrite实现IIS图片防盗链 IIS6.0下配置MySQL+PHP5+Zend+phpMyAdmin IIS6.0下配置MySQL+PHP5+Zend+phpMyAdmin 在Windows服务器上快速架设视频编解码器全攻略 在Windows服务器上快速架设视频编解码器全攻略 win2000server IIS和tomcat5多站点配置 win2000server IIS和tomcat5多站点配置

相关下载

    人气排行 XAMPP配置出现403错误“Access forbidden!”的解决办法 WIN2003 IIS6.0+PHP+ASP+MYSQL优化配置 访问网站403错误 Forbidden解决方法 如何从最大用户并发数推算出系统最大用户数 Server Application Unavailable的解决办法 报错“HTTP/1.1 400 Bad Request”的处理方法 Windows Server 2003的Web接口 http 500内部服务器错误的解决办法(windows xp + IIS5.0)