谁知道在安卓上有没有nginx流媒体服务器器软件自带php5.5+,nginx,sql(或者是lighttpd)的。

新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
UID空间积分0 积分1196阅读权限30帖子精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
家境小康, 积分 1196, 距离下一级还需 804 积分
帖子主题精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
论坛徽章:0
本帖最后由 chlinux 于
18:46 编辑
这台服务器每天跑300万的pv,环境是apache+php,基本都是动态页面很少的图片
18:36 上传
这台服务器每天跑1000万的pv,注意一点,这台服务器程序和下面那台nginx的程序完全一致。
18:36 上传
最后这台每天跑300万的PV,环境是nginx+php
18:36 上传
经过上面几张截图应该有个结论了吧?
之前我一直听说nginx+php比apache+php快多少多少倍之说,大家可能也看到个那个博文,但在我这儿测试怎么就相反了呢?难道网上提到的测试,只包括静态页面的测试?
我有些疑问,所以发上来大家讨论。
与人为善,智慧共享!
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
UID空间积分0 积分1196阅读权限30帖子精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
家境小康, 积分 1196, 距离下一级还需 804 积分
帖子主题精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
论坛徽章:0
本帖最后由 chlinux 于
11:07 编辑
光看帖不回帖啊?帖写的比较匆忙,本以为会有人响应的,没想这里现在这么冷清啊。
apache2.0--apache2.2单位进程占用的内存确实比nginx+php高,似乎网上的博文只比较同等内存如何如何,如果内存足够大,但cpu、硬盘能力有限时,结果又怎么样呢?现在内存很便宜,我们可以直接上它几十个G。
一个好消息,apache2.4已经出来了,官方说性能如何如何的提高了,改善了内存等方面的问题,只装了环境,还没有实战测试php5.3还是和php5.2有些差别的,程序不兼容,还没时间改,据说php5.3不是从php5.2来的,是从php5.0进化来的,还没细研究。
“程序不兼容”,这个问题搞清楚了,不是环境的问题,但也是环境的问题,根源是程序的问题,只是php5.2没有把有问题的程序检测出来,照样给按正确的语法给运行了,但php5.3比较严格,给报出错误了,
错误的代码:
public static public static function functionname(){}
还有date的使用问题,5.3也给出警告了。要设置 date_default_timezone_set('Asia/Shanghai'); 或者配置文件中配置。
与人为善,智慧共享!
UID757399空间积分0 积分93阅读权限10帖子精华可用积分93 信誉积分202 专家积分0 在线时间118 小时注册时间最后登录
白手起家, 积分 93, 距离下一级还需 107 积分
帖子主题精华可用积分93 信誉积分202 专家积分0 在线时间118 小时注册时间最后登录
论坛徽章:0
top看不出什么问题
建议你用压力测试测试一下
UID空间积分0 积分1196阅读权限30帖子精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
家境小康, 积分 1196, 距离下一级还需 804 积分
帖子主题精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
论坛徽章:0
严重不同意你的观点,为什么我的问题都是从top参数发现的呢?
与人为善,智慧共享!
UID空间积分0 积分1196阅读权限30帖子精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
家境小康, 积分 1196, 距离下一级还需 804 积分
帖子主题精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
论坛徽章:0
& & 压力测试,是很片面的测试,很难找到真正能模拟并发的软件,另外,测试也不够全面,有bug的程序不一定能测试到,可能只有在特定的条件下才会出现的bug,这些是压力测试无法测试到的,top,是个不错的工具,很直观的检测到你的程序质量,运行状态,不光是运行环境质量。
与人为善,智慧共享!
UID空间积分0 积分8910阅读权限90帖子精华可用积分8910 信誉积分646 专家积分15 在线时间415 小时注册时间最后登录
腰缠万贯, 积分 8910, 距离下一级还需 1090 积分
帖子主题精华可用积分8910 信誉积分646 专家积分15 在线时间415 小时注册时间最后登录
论坛徽章:0
内存小用nginx。
如果内存大,就无所谓了。
UID7944836空间积分1 积分34795阅读权限200帖子精华可用积分34795 信誉积分11635 专家积分5 在线时间22619 小时注册时间最后登录
帖子主题精华可用积分34795 信誉积分11635 专家积分5 在线时间22619 小时注册时间最后登录
认证徽章论坛徽章:49
chlinux 发表于
这台服务器每天跑300万的pv,环境是apache+php,基本都是动态页面很少的图片
谢谢分享啊,呵呵
UID空间积分0 积分1196阅读权限30帖子精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
家境小康, 积分 1196, 距离下一级还需 804 积分
帖子主题精华可用积分1196 信誉积分194 专家积分0 在线时间153 小时注册时间最后登录
论坛徽章:0
本帖最后由 chlinux 于
11:02 编辑
maochanglu
& & 这个说法我也不太同意啊,呵呵,经过几天的比较,现在看这样的组合更好些。
配置nginx+apache 其中动态由apache处理,静态由nginx处理
现在看,apache+php处理动态页面要比nginx+php要强,这样的结论和我之前帖出的实际运行结果相一致。
我打算安装一下apache2.4.1+php5.3.10来测试一下,据说是优化了内存使用的问题,具体如何还要测试后才知道。
与人为善,智慧共享!
UID空间积分0 积分705阅读权限20帖子精华可用积分705 信誉积分1382 专家积分0 在线时间562 小时注册时间最后登录
丰衣足食, 积分 705, 距离下一级还需 295 积分
帖子主题精华可用积分705 信誉积分1382 专家积分0 在线时间562 小时注册时间最后登录
论坛徽章:0
顶!一直用惯了apache+mysql+php,希望apache给力!
UID757399空间积分0 积分93阅读权限10帖子精华可用积分93 信誉积分202 专家积分0 在线时间118 小时注册时间最后登录
白手起家, 积分 93, 距离下一级还需 107 积分
帖子主题精华可用积分93 信誉积分202 专家积分0 在线时间118 小时注册时间最后登录
论坛徽章:0
& & 怎么会没有模拟并发的软件呢?你应该找找专业的测试人员或者运维人员,另外模拟软件没有,可以写并发测试程序,你可能只是一个php程序员吧,找个有服务器并发应用开发经验的程序员,跟你好好讲解一番。一天几百万pv,估计并发连接数不到一千,高峰期可能也就几千的并发,满足这点并发量的软件还是不少的。
北京皓辰网域网络信息技术有限公司. 版权所有 京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程_服务器应用_Linux公社-Linux系统门户网站
你好,游客
搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程
来源:Linux社区&
作者:heisedeyan
之前的Web服务器都是通过yum搭建的,想要添加新模块或者更新某些软件都很不方便(牵一发而动全身啊!)。所以,现在准备将环境改为源码编译安装,这样便于调整,性能上也会比yum方式好很多。以下是我的安装步骤,我的系统是 6.3 64位。
注意:本文所以配置都是基于第二步所下载的软件版本,安装其他版本不保证会成功
推荐阅读:
生产环境实用之LNMP架构的编译安装+SSL加密实现
LNMP 全功能编译安装 for CentOS 6.3笔记
CentOS 6.3 安装LNMP (PHP 5.4,MyySQL5.6)
在部署LNMP的时候遇到Nginx启动失败的2个问题
安装Nginx php5-fpm MySQL(LNMP环境搭建)
一:安装依赖包
yum install cmake make gcc gcc-c++ libjpeg libjpeg-devel libpng \ libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc \ glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl \ curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl expat expat-devel \ openssl-devel nss_ldap openldap openldap-devel openldap-clients openldap-servers unixODBC-devel \ libxslt-devel libevent-devel libtool-ltdl bison libtool pcre-devel zip unzip gmp-devel gd gd-devel
二:下载LNMP所需软件
wget /archives/mysql-5.5/mysql-5.5.19.tar.gz wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz wget http://iweb.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz wget http://iweb.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz wget /files/mcrypt-2.6.8.tar.gz wget http://download-/PHP/php-5.3.18.tar.bz2 wget http://superb-dca2.dl.sourceforge.net/project/eaccelerator/eaccelerator/eAccelerator%200.9.6.1/eaccelerator-0.9.6.1.tar.bz2 wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz wget http://pecl.php.net/get/memcache-2.2.7.tgz wget http://www.imagemagick.org/download/legacy/ImageMagick-6.8.3-10.tar.gz wget http://pecl.php.net/get/imagick-3.0.1.tgz wget http://pecl.php.net/get/pecl_http-1.7.5.tgz wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz wget http://nginx.org/download/nginx-1.2.9.tar.gz wget http://sourceforge.net/projects/re2c/files/re2c/0.13.5/re2c-0.13.5.tar.gz/downloadwget http://pecl.php.net/get/igbinary-1.1.1.tgz wget /nicolasff/phpredis/archive/master.zip
三、安装mysql
tar zxf mysql-5.5.19.tar.gz cd mysql-5.5.19 groupadd mysql useradd -g mysql -s /sbin/nologin -M mysql cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DSYSCONFDIR=/etc/mysql \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock \ -DWITH_READLINE=1 \ -DWITH_EMBEDDED_SERVER=1 \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DMYSQL_USER=mysql \ -DMYSQL_TCP_PORT=3306 make && make installchown -R mysql.mysql /usr/local/mysqlcd ..
因为有专门的mysql服务器,所以mysql安装到此结束。如果想要在本地运行mysql的话还要做其他配置。比如my.cnf配置文件,mysql启动脚本等等。
四:安装PHP安装PHP(FastCGI) ### 安装PHP支持库 ### tar zxf libiconv-1.14.tar.gz cd libiconv-1.14 ./configure --prefix=/usr/localmakemake installcd .. tar zxf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8 ./configure && make && make install/sbin/ldconfigcd libltdl/ ./configure --enable-ltdl-installmake && make installcd ../../ tar zxf mhash-0.9.9.9.tar.gz cd mhash-0.9.9.9/ ./configuremakemake installcd ../ tar zxf mcrypt-2.6.8.tar.gz cd mcrypt-2.6.8/ ./configuremakemake installcd ../ tar zxf re2c-0.13.5.tar.gz cd re2c-0.13.5 ./configuremake && make installcd ..
在安装PHP主程序前,还需要做一些调整,不然会各种报错。
echo "/usr/local/lib"& & /etc/ld.so.conf.d/local.conf echo "/usr/lib64" && /etc/ld.so.conf.d/local.conf ln -sv /usr/lib64/libldap* /usr/lib/ln -sv /usr/include/sqlext.h /usr/local/include/sqlext.h ln -sv /usr/local/mysql/bin/mysql_config /usr/bin/mysql_configln -sv& /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/ln -sv /lib64/libexpat.* /lib/ln -sv /usr/lib64/libexpat.* /usr/lib/ldconfig
现在安装PHP
tar jxf php-5.3.18.tar.bz2 cd php-5.3.18 groupadd nginx useradd -M -s /sbin/nologin -g nginx nginx ./configure \ --prefix=/usr/local/php --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d \ --with-pic --with-bz2 --with-gettext --with-gmp --with-iconv --with-openssl \ --with-zlib --with-layout=GNU --with-kerberos --with-mhash --with-pcre-regex --enable-exif \ --enable-magic-quotes --enable-sockets& --enable-ucd-snmp-hack --enable-shmop --enable-calendar \ --enable-mbstring \ --enable-xml --enable-fpm --enable-gd-native-ttf --enable-exif --enable-soap --with-gd --with-curl \ --with-mcrypt \ --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql \ --with-unixODBC \ --enable-wddx --with-libexpat-dir --with-xmlrpc --with-xsl --with-ldap --enable-bcmath \ --enable-dom --without-gdbm --disable-debug --disable-rpath --disable-fileinfo --without-pspell \ --disable-posix --disable-sysvmsg --disable-sysvshm --disable-sysvsem make ZEND_EXTRA_LIBS='-liconv'make install
拷贝配置文件及启动脚本
cp php.ini-production /etc/php.ini cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpmchmod +x /etc/init.d/php-fpmchkconfig --add php-fpm chkconfig php-fpm on cd ../
安装PHP扩展模块,别忘记在配置文件里开启模块,不然就白装了哈### 安装扩展模块 ### tar zxf memcache-2.2.7.tgz cd memcache-2.2.7/ /usr/local/php/bin/phpize./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-configmakemake installcd ../ tar jxf eaccelerator-0.9.6.1.tar.bz2 cd eaccelerator-0.9.6.1/ /usr/local/php/bin/phpize./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-configmakemake installmkdir /tmp/cache/eacceleratorchmod 0777 /tmp/cache/eacceleratorcd ../ tar zxf PDO_MYSQL-1.0.2.tgz cd PDO_MYSQL-1.0.2/ /usr/local/php/bin/phpize./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysqlmakemake installcd ../ tar zxf igbinary-1.1.1.tgz cd igbinary-1.1.1 /usr/local/php/bin/phpize./configure --enable-igbinary --with-php-config=/usr/local/php/bin/php-configmake && make installcd .. unzip master cd phpredis-master /usr/local/php/bin/phpize./configure --enable-redis --enable-redis-igbinary --with-php-config=/usr/local/php/bin/php-configmake && make installcd .. tar zxvf ImageMagick-6.8.3-10.tar.gz cd ImageMagick-6.8.3-10/ ./configuremakemake installcd ../ tar zxvf imagick-3.0.1.tgz cd imagick-3.0.1/ /usr/local/php/bin/phpize./configure --with-php-config=/usr/local/php/bin/php-configln -s /usr/local/include/ImageMagick-6 /usr/local/include/ImageMagickexport PKG_CONFIG_PATH=/usr/local/lib/pkgconfigmakemake installcd ../
到此PHP环境配置完毕,接下来安装大名鼎鼎的Nginx。它的好咱就不说了,大家都知道哈。
相关资讯 & & &
& (12/13/:04)
& (11/11/:49)
& (03月30日)
& (11/19/:18)
& (10/06/:39)
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款用稳定版就好,上一次要调一次,可能有些不兼容的情况,兼容性问题就可以搞到一锅泡然后立即回退。可以先考虑部署测试新版,然后调到和旧版没什么区别了才部署上生产线。当然,可能只懒而已……(看过mediawiki国内有在用1.1x的,但实际开发已经是1.2x了,而且也有release版的,但……)
我们的做法是:&br&1、形成规范,原则上用熟悉和稳定版本,比如线上环境我们php还是用php5.2.6。&br&2、支持对新版本的关注和测试,如果老版本不能满足业务需求,那好进行替换或者新业务中使用新版本,然后形成规范。&br&3、未来的新业务必须使用新规范。
我们的做法是:1、形成规范,原则上用熟悉和稳定版本,比如线上环境我们php还是用php5.2.6。2、支持对新版本的关注和测试,如果老版本不能满足业务需求,那好进行替换或者新业务中使用新版本,然后形成规范。3、未来的新业务必须使用新规范。
其实我觉得这个事情是由人,系统负载以及实际需求来决定的,对于关键性业务(绝对不能出任何问题的业务,例如支付系统),维持一个旧有的环境更加稳妥,因为对于此类系统稳定性要求是第一位的。&br&&br&对于非关键性业务,如果确实有需求,或者可以给迁移,升级足够的工作时间,可以考虑部署一个升级后的环境进行测试,再逐步升级到产品环境中。&br&&br&这并不意味着关键性业务便无法扩展了,将部分业务从关键性业务的服务器上抽离(例如搜索之类的完全与关键业务无关的事情),或者使用一套升级后的运行环境用作负载均衡,当关键业务崩溃的时候能有个替补,也是很好的方案。
其实我觉得这个事情是由人,系统负载以及实际需求来决定的,对于关键性业务(绝对不能出任何问题的业务,例如支付系统),维持一个旧有的环境更加稳妥,因为对于此类系统稳定性要求是第一位的。对于非关键性业务,如果确实有需求,或者可以给迁移,升级足够…
已有帐号?
无法登录?
社交帐号登录最新的CentOS6.5+Nginx1.4.5+PHP5.5.9线上环境搭建记实 - 推酷
最新的CentOS6.5+Nginx1.4.5+PHP5.5.9线上环境搭建记实
注:本文很多源码包都源自sourceforge.net,我直接wget的时候不允许下载,URL都已经给出具体怎么下载合适,请读者自己做主!本文所有的软件包来源的URL均来官网
1、安装LNMP所依赖的软件包组件
yum -y install gcc gcc-c++ pcre-devel openssl-devel mysql-devel
libxml2-devel patch bzip2 bzip2-devel curl-devel libjpeg libjpeg-devel
libpng-devel
libpng freetype freetype-devel openldap
openldap-devel perl-CPAN bison ncurses-devel
2、下载安装libiconv
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar xf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/
make && make install
3、下载安装libmcrypt(mhash,mcrypt,libmcrypt是我这边线上开发要用的扩展,读者可以自行选择是否安装)
wget http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download
/root/下载/libmcrypt-2.5.8.tar.gz
sourceforge好像不允许直接wget下载
tar xf libmcrypt-2.5.8.tar.bz2
cd libmcrypt-2.5.8
./configure
make && make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make &&make install
4、下载安装mhash
http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz/download
cp /root/下载/mhash-0.9.9.9.tar.gz
tar xf mhash-0.9.9.9.tar.bz2
cd mhash-0.9.9.9
./configure
make && make install
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
5、下载安装mcrypt
http://sourceforge.net/projects/mcrypt/files/latest/download
cp /root/下载/mcrypt-2.6.8.tar.gz
tar xf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
/sbin/ldconfig
./configure
make && make install
6、添加Nginx运行所需的用户、组
groupadd -r nginx
useradd -r -g nginx nginx
7、下载解压Nginx
wget http://nginx.org/download/nginx-1.4.5.tar.gz
tar xf nginx-1.4.5.tar.gz
8、为了避免在http响应的时候会出现Nginx等的信息,我们在编译的时候可以稍作配置自定义一个信息!
cd nginx-1.4.5/src/http/
vim ngx_http_header_filter_module.c
修改以下两行:
static char ngx_http_server_string[] = "Server: nginx" CRLF;
static char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;
static char ngx_http_server_string[] = "Server: XZWeb 1.0" CRLF;
#XZWeb为想要显示的名称
static char ngx_http_server_full_string[] = "Server:
XZWeb 1.0" NGINX_VER CRLF;
#XZWeb为想要显示的名称
9、编译安装Nginx
./configure \
--prefix=/usr \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx/nginx.pid
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/tmp/nginx/client/ \
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--with-pcre
make && make install
10、编写Nginx启动脚本
vim /etc/rc.d/init.d/nginx
# nginx - this script starts and stops the nginx daemon
# chkconfig:
# description:
Nginx is an HTTP(S) server, HTTP(S) reverse \
proxy and IMAP/POP3 proxy server
# processname: nginx
/etc/nginx/nginx.conf
/etc/sysconfig/nginx
# pidfile:
/var/run/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/etc/nginx/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
make_dirs() {
# make required directories
user=`nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $ do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
[ $retval -eq 0 ] && touch $lockfile
return $retval
echo -n $"Stopping $prog: "
killproc $prog -QUIT
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
restart() {
configtest || return $?
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
force_reload() {
configtest() {
$nginx -t -c $NGINX_CONF_FILE
rh_status() {
status $prog
rh_status_q() {
rh_status >/dev/null 2>&1
case "$1" in
rh_status_q && exit 0
rh_status_q || exit 0
restart|configtest)
rh_status_q || exit 7
force-reload)
force_reload
condrestart|try-restart)
rh_status_q || exit 0
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
11、添加Nginx为系统服务并设置开机自启动
chmod +x /etc/rc.d/init.d/nginx
chkconfig --add nginx
chkconfig nginx on
12、修改Nginx配置文件,屏蔽http响应信息中的Nginx版本等信息
& &在http{}端添加server_tokens = off;
13、链接复制linux一些64位的库文件防止在安装PHP的时候报错
cp -frp /usr/lib64/libjpeg.* /usr/lib
cp -frp /usr/lib64/libpng* /usr/lib
cp -frp /usr/lib64/libldap* /usr/lib
ln -s /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so
ln -s /usr/lib/libmysqlclient.so /usr/lib64/libmysqlclient.so
14、下载安装PHP
http://cn2.php.net/get/php-5.5.9.tar.gz/from/this/mirror
cd php-5.5.9
./configure
--prefix=/data/install/php --with-mysql --with-mysqli --with-iconv-dir=/usr/local --with-freetype-dir
--with-jpeg-dir --with-png-dir
--with-zlib
--with-libxml-dir=/usr
--enable-xml
--disable-rpath
--enable-bcmath
--enable-shmop
--enable-sysvsem
--enable-inline-optimization
--enable-mbregex
--enable-fpm
--enable-mbstring
--with-mcrypt
--enable-gd-native-ttf
--with-openssl
--with-mhash
--enable-pcntl
--enable-sockets
--with-ldap
--with-ldap-sasl
--with-xmlrpc
--enable-zip
--enable-soap
--with-config-file-path=/etc
--with-config-file-scan-dir=/etc/php.d
--with-bz2
make ZEND_EXTRA_LIBS='-liconv'
make intall
15、为PHP提供配置文件
cp php.ini-production /etc/php.ini
16、为php-fpm提供Sysv init脚本,并将其添加至服务列表
cp sapi/fpm/init.d.php-fpm
/etc/rc.d/init.d/php-fpm
chmod +x /etc/rc.d/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
17、为php-fpm提供配置文件
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
18、编辑php-fpm的配置文件(此处只贴一些我修改过的,具体还有哪些需要修改会在另一篇中补充)
vim /usr/local/php/etc/php-fpm.conf
配置fpm的相关选项为你所需要的值,并启用pid文件(如下最后一行):
pm.max_children = 150
pm.start_servers = 8
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pid = /data/install/php/var/run/php-fpm.pid
19、接下来就可以启动php-fpm了
service php-fpm start
20、使用如下命令来验正(如果此命令输出有中几个php-fpm进程就说明启动成功了)
ps -ef |grep php-fpm
21、下载安装memcache扩展(PHP连接memcached服务器的扩展
cd /data/software/src/
wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar xf memcache-2.2.6.tgz
cd memcache-2.2.6
/data/install/php/bin/phpize
./configure --with-php-config=/data/install/php/bin/php-config
make && make install
22、下载安装xcache扩展
http://xcache.lighttpd.net/pub/Releases/3.1.0/xcache-3.1.0.tar.gz
tar xf xcache-3.1.0.tar.gz
cd xcache-3.1.0
/data/install/php/bin/phpize
./configure --enable-xcache --with-php-config=/data/install/php/bin/php-config
make && make install
23、配置PHP文件,添加扩展
vim /etc/php.ini
extension_dir = "/data/install/php/lib/php/extensions/no-debug-non-zts-/"
[memcache]
extension = "memcache.so"
extension = "xcache.so"
Xcache.size = 128M
Xcache.count = 2
Xcache.ttl = 86400
Xcache.gc_interval = 3600
Xcache.var_size = 0
24、查看扩展是否加载成功
/data/install/php/bin/php -v
#查看下xcache信息,此处先看下xcache跟zend的,其他的可以在phpinfo中查看;
#有关xcache的详细官方配置介绍
http://xcache.lighttpd.net/wiki/XcacheIni
25、修改下php-fpm的配置文件,适应线上环境(此处只给出我修改的一些项目,具体还能改哪些会在后面的博文中补充)
pid = /data/install/php/var/run/php-fpm.pid
error_log = /data/logs/php-fpm-error.log
log_level = notice
emergency_restart_threshold = 10
emergency_restart_interval = 1m
process_control_timeout = 5s
daemonize = yes
user = nobody
group = nobody
listen = 127.0.0.1:9000
pm.max_children = 192
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
26、配置fastcgi
vim /etc/nginx/fastcgi_params
fastcgi_param
GATEWAY_INTERFACE
fastcgi_param
SERVER_SOFTWARE
fastcgi_param
QUERY_STRING
fastcgi_param
REQUEST_METHOD
fastcgi_param
CONTENT_TYPE
fastcgi_param
CONTENT_LENGTH
fastcgi_param
SCRIPT_FILENAME
$document_root$fastcgi_script_
fastcgi_param
SCRIPT_NAME
$fastcgi_script_
fastcgi_param
REQUEST_URI
fastcgi_param
DOCUMENT_URI
$document_
fastcgi_param
DOCUMENT_ROOT
$document_
fastcgi_param
SERVER_PROTOCOL
fastcgi_param
REMOTE_ADDR
fastcgi_param
REMOTE_PORT
fastcgi_param
SERVER_ADDR
fastcgi_param
SERVER_PORT
fastcgi_param
SERVER_NAME
27、重启php-fpm
service php-fpm restart
28、修改Nginx配置文件,使其适合线上环境
vim /etc/nginx/nginx.conf
worker_processes
/data/logs/error.
worker_cpu_affinity 00 1000;
worker_rlimit_nofile 20480;
#可以直接设置为65535
/data/logs/nginx.
worker_connections
#可以直接设置成65535,注意尽量跟上面的设置统一
default_type
application/octet-
log_format
'$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
charaset utf-8;
server_names_hash_bucket_size 128;
client_header_buffer_size 4k;
large_client_header_buffers 4 4k;
client_max_body_size 8m;
keepalive_timeout
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 600;
fastcgi_buffer_size 16k;
fastcgi_buffers 16 16k;
fastcgi_busy_buffers_size 32k;
#open_file_cache max=204800 inactive=20s;
#open_file_cache_min_uses 1;
#open_file_cache_valid 30s;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_comp_level 3;
gzip_types text/plain application/x-javascript text/css application/
server_name
192.168.239.130;
#charset koi8-r;
access_log
/data/logs/www.access.
location / {
index.html index.
index index.
location ~ \.(js|css|jpg|png|gif)$ {
location ~ \.php$ {
fastcgi_pass
127.0.0.1:9000;
fastcgi_index
#fastcgi_pass_
if ( $fastcgi_script_name ~ \..*\/.*php ) {
return 403;
fastcgi_param
SCRIPT_FILENAME
$document_root$fastcgi_script_
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
location ~ /\.ht {
29、重启Nginx(也可以重新reload一下配置文件)
service nginx restart
30、关于这篇博文的一些问题
& 1、有人可能会问为什么没有安装mysql的步骤呢,这里安装的只是Nginx跟PHP,一般线上很少会 & & & &PHP、Nginx、mysql同在一台服务器吧(即使就有一台服务器最好是用虚拟机的方式将不同服务安 & & &装到不同虚拟机做业务分离),要想解决PHP安装依赖mysql某些文件的话直接yum安装mysql- & & & & &devel就可以了,节省时间节省空间多好!!!
& 2、博文中提到的后续文章什么时候能更新?这个不好说 ,我也是菜鸟在摸索中,等我摸索好了自 & & &然会发出来的,哈哈@_@;
& 3、博文中提到的屏蔽Nginx信息,PHP信息是指什么?两张图便知晓
& &修改前:
650) this.width=650;" src="/VJBf2q.jpg!web" title="修改前.jpg" alt="wKioL1MVnbPD-4q5AAJGwGeHg0E933.jpg" />
650) this.width=650;" src="/E7R3If.jpg!web" title="修改后.jpg" alt="wKioL1MVnc6CkA--AAHJcPyppek469.jpg" />
&看图你们就知道我的良苦用心了吧!!!!!
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
没有分页内容
图片无法显示
视频无法显示
与原文不一致}

我要回帖

更多关于 lighttpd nginx 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信