• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >Nginx > 更换apache到nginx的操作过程全记录

更换apache到nginx的操作过程全记录

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含nginx和apache区别,nginx apache,apache转nginx,nginx apache比较,nginx和apache哪个好等服务器相关知识,网友希望可以进行参考

客户有一个跑了3年多的组装pc服务器, 1.5G内存,p4 2.8G cpu,apache2.28+mod_php+mysql。95%的页面是静态页,每天大约有各类http请求500-1000万个(包括html,js,css,jpg,gif,php等) 启用了gzip压缩,大部分时间负载在1.0以下,但是偶尔会暴涨,导致死机,严重情况一天down机N次。一直没找到原因,可能是服务器不行了。 正好想测试一下nginx + php-fastcgi 性能,也许能行。 说干就干,看了一些nginx文档,开始实施了。过程如下:

  安装php最新版,直接用自带的fastcgi模式:

  ./configure --prefix=/usr/local/php526cgi --with-mysql=/usr/local/mysql --with-zlib=/usr/local/src/zlib --with-gd --with-freetype-dir=/usr/local/src/freetype --with-jpeg-dir=/usr/local/src/jpeg/lib --enable-gd-native-ttf --with-png-dir=/usr/local/src/libpng --enable-exif --enable-ftp --with-curl --enable-mbstring=all --enable-force-cgi-redirect --enable-zip --enable-zend-multibyte --enable-fastcgi

  make

  make install

  由于已经是有php环境了,zlib等组件早已安装好。我只需要--enable-fastcgi就ok了。 php搞定!

  mysql不动它,继续用。

  执行php-fastcgi:

  我们可以利用Lighttpd的spawn-fcgi来控制cgi进程的运行。获得spawn-fcgi的方法如下:

  wget http://www.lighttpd.net/download/lighttpd-1.4.18.tar.bz2 #获取Lighttpd的源码包

  tar -xvjf lighttpd-1.4.18.tar.bz2

  cd lighttpd-1.4.18

  ./configure --prefix=/usr/local/lighttpd

  make

  cp src/spawn-fcgi /usr/local/nginx/bin/spawn-fcgi #取出spawn-fcgi的程序

  下面我们就可以使用 spawn-fcgi 来控制php-cgi的FastCGI进程了

  /usr/local/nginx/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 32 -u nobody -g nobody -f /usr/local/php526cgi/bin/php-cgi

  好了,搞定。继续。

  安装nginx:

  ./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module

  make

  make install

  strip /usr/local/nginx/sbin/nginx 可以压缩执行文件,节约内存

  制作nginx启动脚本:

  vi /usr/local/nginx/bin/mynginx

  #!/bin/bash

  case in

  start)

  /usr/local/nginx/sbin/nginx

  stop)

  killall -9 nginx

  test)

  /usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf

  restart)

  ps auxww | grep nginx | grep master | awk '{print }' | xargs kill -HUP

  show)

  ps -aux|grep nginx

  esac

  用法一看就知道了。

  设置nginx的配置文件,这个网上一大把,不重复了。有需要的可以上 http://nginx.myhbcms.cn/ 找找

  将apache的httpd.conf里面的虚拟主机配置转到nginx里去,由于有几十个虚拟主机,这个花了我好几个小时的时间。

  额外插曲:由于使用了apache的mod_vhosts虚拟主机模块,nginx没找到对应的功能模块,不得以,只好继续在8081端口开着apache,用nginx的proxy来反向代理。举例:

  server {

  listen 80;

  server_name *.hbcms.com *.myhbcms.cn;

  location / {

  proxy_pass http://127.0.0.1:8081/; // 这是apache运行的端口

  proxy_set_header Host $host;

  proxy_set_header X-Real-IP $remote_addr;

  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

  }

  }

  大致过程就是这样了,希望对你有所帮助。 至于这个服务器性能会如何,运行一段时间才知道。理论上来说nginx应该会比apache资源占用上小很多。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 更换apache到nginx的操作过程全记录
  • nginx和apche如何自定义404的页面

相关文章

  • Nginx 504 Gateway Time-out错误的解决方案
  • 更换apache到nginx的操作过程全记录
  • Curl监控Nginx网站状态,如回应502信息即重启php-fpm
  • nginx下文件类型错误解析漏洞及处理方法
  • Windows 下安装 Nginx 服务并自动运行
  • nginx location 指令匹配顺序
  • Ubuntu下Nginx/PHP/MYSQL开发环境的配置方法
  • Nginx下统一顶级域名和www子域名实现自动转向
  • Windows下让nginx以服务的方式启动运行
  • Nginx提示:413 Request Entity Too Large 的解决方法

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Nginx怎么打开目录浏览功能(autoindex)
    • IIS与Nginx实测对比[1]:虚拟机处理静态文件
    • Nginx用户认证配置方法(域名/目录)详解
    • nginx和apche如何自定义404的页面
    • 使用Nginx给Google App Engine做负载均衡
    • Nginx正确设置404自定义页面解决软404错误
    • 更换apache到nginx的操作过程全记录
    • Nginx修改配置实现图片防盗链
    • 使用 Nginx 提升网站访问速度
    • nginx 配置禁止访问目录或文件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有