Nginx介绍


​Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

以上内容懒得自己打字了,从百度百科复制过来的


Nginx安装(CentOS为例)

安装编译工具以及库文件

</>复制代码

  1. yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

安装PCRE

PRCE的作用是让Nginx支持Rewrite功能

1.下载PCRE安装包(​​传送门​​)

</>复制代码

  1. cd /usr/local/src/
    wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

2.解压安装包

</>复制代码

  1. tar -zxvf pcre-8.35.tar.gz

3.进入安装包目录

</>复制代码

  1. cd pcre-8.35

4.编译安装

</>复制代码

  1. ./configure
    make && make install

5.查看pcre版本

</>复制代码

  1. pcre-config --version

安装Nginx

1.下载Nginx(​​传送门​​)

</>复制代码

  1. cd /usr/local/src/
    wget http://nginx.org/download/nginx-1.6.2.tar.gz

2.解压安装包

</>复制代码

  1. tar -zxvf nginx-1.6.2.tar.gz

3.进入安装包目录

</>复制代码

  1. cd nginx-1.6.2

4.编译安装Nginx

</>复制代码

  1. ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
    make
    make install

5.查看Nginx版本

</>复制代码

  1. /usr/local/webserver/nginx/sbin/nginx -v

Ngix配置

创建Nginx运行使用的用户www

</>复制代码

  1. /usr/sbin/groupadd www
    /usr/sbin/useradd -g www www

配置nginx.conf,将/usr/local/webserver/nginx/conf/nginx.conf替换为以下内容

</>复制代码

  1. user www www;
    worker_processes 2; #设置值和CPU核心数一致
    error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日志位置和日志级别
    pid /usr/local/webserver/nginx/nginx.pid;
    #Specifies the value for maximum file descriptors that can be opened by this process.
    worker_rlimit_nofile 65535;
    events
    {
    use epoll;
    worker_connections 65535;
    }
    http
    {
    include mime.types;
    default_type application/octet-stream;
    log_format main $remote_addr - $remote_user [$time_local] "$request"
    $status $body_bytes_sent "$http_referer"
    "$http_user_agent" $http_x_forwarded_for;

    #charset gb2312;

    server_names_hash_bucket_size 128;
    client_header_buffer_size 32k;
    large_client_header_buffers 4 32k;
    client_max_body_size 8m;

    sendfile on;
    tcp_nopush on;
    keepalive_timeout 60;
    tcp_nodelay on;
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
    fastcgi_buffer_size 64k;
    fastcgi_buffers 4 64k;
    fastcgi_busy_buffers_size 128k;
    fastcgi_temp_file_write_size 128k;
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types text/plain application/x-javascript text/css application/xml;
    gzip_vary on;

    #limit_zone crawler $binary_remote_addr 10m;
    #下面是server虚拟主机的配置
    server
    {
    listen 80;#监听端口
    server_name localhost;#域名
    index index.html index.htm index.php;
    root /usr/local/webserver/nginx/html;#站点目录
    location ~ .*/.(php|php5)?$
    {
    #fastcgi_pass unix:/tmp/php-cgi.sock;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
    }
    location ~ .*/.(gif|jpg|jpeg|png|bmp|swf|ico)$
    {
    expires 30d;
    # access_log off;
    }
    location ~ .*/.(js|css)?$
    {
    expires 15d;
    # access_log off;
    }
    access_log off;
    }

    }

查看配置文件nginx.conf的正确性

</>复制代码

  1. /usr/local/webserver/nginx/sbin/nginx.conf -t

启动Nginx

</>复制代码

  1. /usr/local/webserver/nginx/sbin/nginx

然后访问我们的ip地址即可看到Nginx服务器的网页。