您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 利用Nginx替代apache实现高性能的Web环境
利用Nginx替代apache实现高性能的Web环境利用Nginx替代apache实现高性能的Web环境Nginx介绍:Nginx发音为[enginex],是由俄罗斯人IgorSysoev建立的项目,基于BSD许可。据说他当初是F5的成员之一,英文主页:。俄罗斯的一些大网站已经使用它超过两年多了,一直表现不凡,相信想了解nginx的朋友都读过阿叶大哥的利用nginx实现负载均衡的文章相关链接见(六)。测试环境:红动中国(redocn)提供运营服务器环境.关于红动服务环境:红动中国在早期利用apache环境,再加上一些优化的工作,一直是相对很稳定,但是最近由于网站发展,访问量越来越大,在线人数一多经常出现,负载过高,性能急剧下降,经过双木站长的同意,考虑是否能利用nginx来代替apache,经过长时间的观察目前nginx工作很稳定,系统也不会再说现高负载的状况,占用内存也很低,访问速率从用户体验来看明显有提升.关于红动中国:红动中国(redocn)论坛经过近1年的快速发展,目前日均页面访问量超过100万,位居全球设计论坛(中文)第1位,是国内最具影响力的设计论坛之一。目前论坛拥有近20万会员,包括众多设计界领军人物在内的行业中坚力量、相关艺术院校师生以及部分设计爱好者等。迁移目标:实现网站论坛静态化,防盗链,下载并发数和速率限制,实现原站apache所具有的所有功能,将原apache环境下的站点全部迁移到Nginx一.PHP(Fastcgi)编译安装[root@attphp-5.2.4]#catin.sh./configure\–prefix=/usr/local/php-fcgi\–enable-fastcgi\–enable-discard-path\–enable-force-cgi-redirect\–with-config-file-path=/usr/local/php-fcgi/etc\–enable-zend-multibyte\–with-mysql=/usr/local/mysql\–with-libxml-dir=/usr/local/libxml2\–with-gd=/usr/local/gd2\–with-jpeg-dir\–with-png-dir\–with-bz2\–with-freetype-dir\–with-iconv-dir\–with-zlib-dir\–with-openssl=/usr/local/openssl\–with-mcrypt=/usr/local/libmcrypt\–enable-sysvsem\–enable-inline-optimization\–enable-soap\–enable-gd-native-ttf\–enable-ftp\–enable-mbstring\–enable-exif\–disable-debug\–disable-ipv6makemakeinstallcpphp.ini-dist/usr/local/php-fcgi/etc/php.ini复制代码注:关于如何安装gd库,mysql的编译安装,本文将不介绍,本文重点在于介绍nginx的安装与配置,如想了解其它相关的问题可以到LinuxPk去找相关的贴子()二.Nginx编译安装1.创建nginx运行用户和虚拟主机目录groupadd:复制代码2.安装lighttpd中附带的spawn-fcgi,用来启动php-cgi先编译安装lighttpd产生spawn-fcgi二进制文件.cd/usr/local/src/lighttpd-1.4.18复制代码启动php-cgi进程,监听127.0.0.1的8085端口,进程数为250(如果服务器内存小于3GB,可以只开启25个进程),用户为:/usr/local/php-fcgi/bin/spawn-fcgi-a127.0.0.1-p8085-C250-u的安装与配置安装Nginx所需的pcre库:://sysoev.ru/nginx/nginx-0.5.32.tar.gztarzxvfnginx-0.5.32.tar.gzcdnginx-0.5.32./configure–user=–group=–prefix=/usr/local/nginx/–with-http_stub_status_module–with-openssl=/usr/local/opensslmake&&makeinstall复制代码此模块非核心模块,需要在编译的时候手动添加编译参数–with-http_stub_status_module配置nginx三.Nginx主配置文件及PHP支持.1.nginx.conf主配置文件的配置#cd/usr/local/nginx/conf/#cpnginx.confnginx.conf.cao#cat/dev/nullnginx.conf#vinginx.conf//主配置文件user{useepoll;#maxclient=worker_processes*worker_connections/cpu_numberworker_connections51200;}http{includeconf/mime.types;default_typeapplication/octet-stream;log_formatmain‘$remote_addr-$remote_user[$time_local]$request‘‘$status$body_bytes_sent$http_referer‘‘$http_user_agent$http_x_forwarded_for’;#access_log/data/以下是加载虚拟主机配置.#}复制代码2.配置支持Fastcgi模式的PHP[root@redocnconf]#catenable_php5.conffastcgi_pass127.0.0.1:8085;fastcgi_indexindex.php;fastcgi_paramGATEWAY_INTERFACECGI/1.1;fastcgi_paramSERVER_SOFTWAREnginx;#newacupload#fastcgi_pass_request_bodyoff;#client_body_in_file_onlyclean;#fastcgi_paramREQUEST_BODY_FILE$request_body_file;#fastcgi_paramQUERY_STRING$query_string;fastcgi_paramREQUEST_METHOD$request_method;fastcgi_paramCONTENT_TYPE$content_type;fastcgi_paramCONTENT_LENGTH$content_length;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;fastcgi_paramSCRIPT_NAME$fastcgi_script_name;fastcgi_paramREQUEST_URI$request_uri;fastcgi_paramDOCUMENT_URI$document_uri;fastcgi_paramDOCUMENT_ROOT$document_root;fastcgi_paramSERVER_PROTOCOL$server_protocol;fastcgi_paramREMOTE_ADDR$remote_addr;fastcgi_paramREMOTE_PORT$remote_port;fastcgi_paramSERVER_ADDR$server_addr;fastcgi_paramSERVER_PORT$server_port;fastcgi_paramSERVER_NAME$server_name;#PHPonly,requiredifPHPwasbuiltwith–enable-force-cgi-redirectfastcgi_paramREDIRECT_STATUS200;复制代码四,多虚拟主机应用配置案例.#
本文标题:利用Nginx替代apache实现高性能的Web环境
链接地址:https://www.777doc.com/doc-911824 .html