Nikedown's Blog

Nginx安装部署

字数统计: 845阅读时长: 4 min
2019/04/04 Share

什么是Nginx

Nginx是一个HTTP和反向代理服务器,一个邮件代理服务器和一个通用的TCP / UDP代理服务器,最初由Igor Sysoev编写。很长一段时间以来,它一直在许多负载很重的俄罗斯网站上运行,包括 Yandex, Mail.Ru, VK和 Rambler。据Netcraft称,nginx 在2019年3月服务或代理了 26.20%最繁忙的网站。

Nginx能干什么

Nginx具体能干嘛可以参考下以下博客
https://www.cnblogs.com/wcwnina/p/8728391.html

Nginx安装

  • 安装编译工具和库文件
    1
    yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

安装成功后

  • 安装 PCRE
    安装PCRE是为了让 Nginx 支持 Rewrite 功能
    安装前请确保安装了wget(如果没有的话请输入以下命令安装wget)
    1
    yum install weget

1.下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

1
2
[root@name /]# cd /usr/local/src/
[root@name src]# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

2.解压安装包

1
[root@name src]# tar zxvf pcre-8.35.tar.gz

3.进入安装包目录

1
[root@name src]# cd pcre-8.35

4.编译安装

1
2
[root@name pcre-8.35]# ./configure
[root@name pcre-8.35]# make && make install

5.查看pcre版本

1
[root@name pcre-8.35]# pcre-config --version

2.解压安装包

1
[root@name src]# tar zxvf nginx-1.6.2.tar.gz

3.进入安装包目录

1
[root@name src]# cd nginx-1.6.2

4.编译安装

1
2
[root@name nginx-1.6.2]# ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
[root@name nginx-1.6.2]# make && make install

5.查看pcre版本

1
2
[root@name pcre-8.35]# /usr/local/webserver/nginx/sbin/nginx -v
![](http://ww1.sinaimg.cn/large/006xsPrWly1g1qy6bbj7lj30lu016q2s.jpg)

Nginx配置

  • 创建Nginx运行使用的用户uername

    1
    2
    [root@name /]# /usr/sbin/groupadd uername
    [root@name src]# /usr/sbin/useradd -g uername uername
  • 配置前我们需要了解一些vim的基础命令(因为我们是用vim对配置文件进行编辑)
    vim命令可以参考以下博客:
    https://blog.csdn.net/sumword_/article/details/53011463?utm_source=blogxgwz1

  • 配置nginx.conf ,将/usr/local/webserver/nginx/conf/nginx.conf替换为以下内容
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    [root@name conf]#  cat /usr/local/webserver/nginx/conf/nginx.conf

    user username username;
    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安装
参考博客1
参考博客2

原文作者:nikedown

发表日期:April 4th 2019, 8:33:34 pm

更新日期:April 20th 2019, 7:06:12 pm

CATALOG
  1. 1. 什么是Nginx
  2. 2. Nginx能干什么
  3. 3. Nginx安装
  4. 4. Nginx配置