centos 将Apache换为Nginx详细步骤

前端之家收集整理的这篇文章主要介绍了centos 将Apache换为Nginx详细步骤前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Nginx简介:

Nginx是一个高性能的HTTP服务器和反向代理服务器, 最大的优点是节省资源,适用于处理高并发的请求。

1. Nginx最初是按照反向代理设计的,和Apache不同,Nginx关心如何处理url,而不是文件

2. Apache 是个基于进程处理的web服务器,如果同时有多个请求,必须要启动多个进程来处理。 这样在高负载的情况下,资源的消耗和响应的速度都会有很大的问题。 而Nginx是个基于事件(event)的异步处理模式, 下面是Nginx的一个简单的示意图,有一个Master进程,Maste进程负责系统配置,管理socket,以及管理一个或是多个Worker进程。 而Worker进程接收和处理来自用户(浏览器)的请求。一般来讲,一个worker进程可以同时处理上千个用户的连接请求。每个worker进程采用异步的,基于event的方式来处理用户的请求。对于HTML的静态页面Nginx会自行来处理,但对于PHP,JSP,Python等动态页面Nginx是通过FastCGI(或者SCGI,UWSGI)来把动态页面的请求交给相应的处理程序来处理.

3.Nginx支持最多并发理数论值为50000,Apache支持最多并发数理论值为300

#查看自己系统信息
#lsb_release -a
我的Linux配置信息:

LSB Version: :core-4.1-amd64:core-4.1-noarch

Distributor ID: CentOS

Description: CentOS Linux release 7.2.1511 (Core)

Release: 7.2.1511

Codename: Cor

详细步骤:

1:首先停掉apache,输入命令sudo service httpd stop (以防万一,最好不好提前卸掉)

2.然后停掉Apache开启自启,输入命令chkconfig httpd off (防止以前设置过开机自启)

3:安装Nginx,输入命令:yum install Nginx (推荐使用yum安装,省时省事)

4:启动Nginx,输入命令sudo Nginx (浏览器上输入 http://主机ip, 如果能出现Nginx的测试页面 “Test page for the Nginx http server on EPEL”就说明Nginx已经正常运行了。重启Nginx的命令 Nginx -s quit )

5:添加PHP 支持,安装PHP-fpm,安装命令yum install PHP-fpm (PHP-FPM (即PHP-FastCGI Process Manager) 是目前最常用的一个PHP FastCGI的实现。通俗的讲,这个模块在NginxPHP之间桥梁,使之可以互相通信和交换。)

6:Nginx设置多站点(我的Nginx.conf在此/etc/Nginx路径下)

我们假定这个主机上有两个网站,一个是aaa.com,普通的PHP站点, 一个是bbb.com,为wordpress博客。 我们就讨论一下在这种情况下,如何设置Nginx.首先为站点建立相应的目录


mkdir -p  /var/www/aaa/html
 
mkdir -p /var/www/bbb/html
 
mkdir -p /var/log/Nginx/aaa
 
mkdir -p /var/log/Nginx/bbb
 
chown -R Nginx:adm  /var/www/aaa/html
 
chown -R Nginx:adm  /var/www/bbb/html
 
chown -R Nginx:adm  /var/log/Nginx/aaa
 
chown -R Nginx:adm  /var/log/Nginx/bbb

为两个网站分别设置虚拟目录(virtual directory)

为了保证整个配置更加清晰,我们尽量不修改配置文件/etc/Nginx/Nginx.conf,而是在在/etc/Nginx/conf.d目录下建立两个文件,一个是aaa.conf,一个是bbb.conf,同时要确认/etc/Nginx/Nginx.conf此文件中 这句话没有被注释

include /etc/Nginx/conf.d/*.conf;
再回到 /var/log/Nginx/aaa/ /var/log/Nginx/bbb/

输入命令创建log文件 touch error.log access.log


===============================分割线=====================================

实现service Nginx start

1、在/etc/init.d/目录下编写脚本,名为Nginx
  Nginx="/usr/local/Nginx/sbin/Nginx"                                                                       
  prog=$(basename $Nginx)                                                                                   
  Nginx_CONF_FILE="/usr/local/Nginx/conf/Nginx.conf"                                                        
  [ -f /etc/sysconfig/Nginx ] && . /etc/sysconfig/Nginx                                                     
  lockfile=/var/lock/subsys/Nginx                                                                           
  start() {                                                                                                 
  [ -x $Nginx ] || exit 5                                                                                   
  [ -f $Nginx_CONF_FILE ] || exit 6                                                                         
  echo -n $"Starting $prog: "                                                                               
  daemon $Nginx -c $Nginx_CONF_FILE                                                                         
  retval=$?                                                                                                 
  echo                                                                                                      
  [ $retval -eq 0 ] && touch $lockfile                                                                      
  return $retval                                                                                            
  }                                                                                                         
  stop() {                                                                                                  
  echo -n $"Stopping $prog: "                                                                               
  killproc $prog -QUIT                                                                                      
  retval=$?                                                                                                 
  echo                                                                                                      
  [ $retval -eq 0 ] && rm -f $lockfile                                                                      
  return $retval                                                                                            
  killall -9 Nginx                                                                                          
  }                                                                                                         
  restart() {                                                                                               
  configtest || return $?                                                                                   
  stop                                                                                                      
  sleep 1                                                                                                   
  start                                                                                                     
  }                                                                                                         
  reload() {                                                                                                
  configtest || return $?                                                                                   
  echo -n $"Reloading $prog: "                                                                              
"Nginx" 95L,2197C                                                                          50,1          27% 

    [root@example ~]# cp Nginx /etc/init.d/
  [root@example ~]# chmod 755 /etc/init.d/Nginx
  [root@example ~]# chkconfig --add Nginx

  3、Nginx启动、停止、无间断服务重启
  [root@example ~]# service Nginx start
  [root@example ~]# service Nginx stop
  [root@example ~]# service Nginx reload


本文参考:https://www.androiddev.net/webserver-apache-to-Nginx/

和https://segmentfault.com/a/1190000004011180 将Apache转为Nginx

参考:http://www.jb51.net/article/27533.htm 配置Nginx站点

猜你在找的CentOS相关文章