1.安装PCRE库

$ cd /usr/local/
$ https://sourceforge.net/projects/pcre/files/pcre/8.36/
$ tar -zxvf pcre-8.36.tar.gz
$ cd pcre-8.36
$ ./configure
$ make
$ make install

2.安装zlib库

$ cd /usr/local/
$ wget http://zlib.net/zlib-1.2.8.tar.gz
$ tar -zxvf zlib-1.2.8.tar.gz
$ cd zlib-1.2.8
$ ./configure
$ make
$ make install

3.安装ssl

$ cd /usr/local/
$ wget http://www.openssl.org/source/openssl-1.0.1j.tar.gz
$ tar -zxvf openssl-1.0.1j.tar.gz
$ ./config
$ make
$ make install

4.安装nginx

$ cd /usr/local/
$ wget http://nginx.org/download/nginx-1.8.0.tar.gz
$ tar -zxvf nginx-1.8.0.tar.gz
$ cd nginx-1.8.0
$ ./configure --prefix=/usr/local/nginx
$ make
$ make install

5.启动

$ /usr/local/nginx/sbin/nginx

报错 nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

32位系统

[root@localhost ~]#  ln -s /usr/local/lib/libpcre.so.1 /lib

64位系统

[root@localhost ~]#  ln -s /usr/local/lib/libpcre.so.1 /lib64

然后在启动nginx就OK了

6.重启、停止、强制关闭

$ /usr/local/nginx/sbin/nginx –s reload 重启
$ /usr/local/nginx/sbin/nginx –s stop 停止
$ /usr/local/nginx/sbin/nginx –t 测试配置文件是否正常
$ pkill nginx 强制关闭

7、配置

配置文件位于安装目录conf下

nginx/conf/nginx.conf

Nginx配置文件常见结构的从外到内依次是 http,server location等等,缺省的继承关系从外到内,也就是说内层块会自动获取外层块的值作为缺省值。

  • Server

接收请求的服务器将不同请求按规则转发到不同的后端服务器上,在nginx中可以通过构建虚拟主机的概念来将这些不同的服务配置进行隔离。

server {
listen 80;
server_name localhost;
root html;
index index.html index.htm;
}
  1. listen 指定监听端口
  2. server_name 指定ip或域名
  3. index  设定访问的默认首页地址
  4. root  指定虚拟主机的网页根目录,这个地方可以是相对地址或绝对地址

当server超过2个时,建议不同的虚拟主机的配置放在各自独立的文件中,通过在主配置文件nginx.conf加上include指令包含近下来,便于管理。

include vhost/*.conf
  • Localtion

每个url请求都会对应一个服务,nginx进行处理转发或者是本地的一个文件路径,或者是其它服务器的一个服务路径,而这个路径匹配时通过location来进行的。我们快车将server当做对应一个域名进行的配置,而location是在一个域名下对更精细的路径进行配置。

可以将root和index指令放到一个location中,那么只有在匹配到这个location时才会访问root后的内容

    location / {
root /data/www/host2;
index index.html index.htm;
}
  1. location匹配规则

    ~  波浪线表示执行一个正则匹配,区分大小写
    ~* 表示执行一个正则匹配,不区分大小写
    ^~ 表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般来匹配目录
    = 进行普通字符精确匹配
  2. 匹配例子
    location  = / {
    # 只匹配"/".
    [ configuration A ]
    }
    location / {
    # 匹配任何请求,因为所有请求都是以"/"开始
    # 但是更长字符匹配或者正则表达式匹配会优先匹配
    [ configuration B ]
    }
    location ^~ /images/ {
    # 匹配任何以 /images/ 开始的请求,并停止匹配 其它location
    [ configuration C ]
    }
    location ~* \.(gif|jpg|jpeg)$ {
    # 匹配以 gif, jpg, or jpeg结尾的请求.
    # 但是所有 /images/ 目录的请求将由 [Configuration C]处理.
    [ configuration D ]
    } 请求:
    / -> 符合configuration A
    /documents/document.html -> 符合configuration B
    /images/1.gif -> 符合configuration C
    /documents/1.jpg ->符合 configuration D
  3. 静态文件映射

    访问文件的配置主要有root和aliasp's两个指令,这两个指令的区别容易能混。

    alias后跟的指定目录是精准的,并且末尾必须加/

        location /c/ {
    alias /a/;
    }

    如果访问站点http://location/c访问的就是/a/目录下的站点信息

    root后跟的指定目录是上级目录,并且该上级目录下要含有和location后指定名称的同名目录才行

        location /c/ {
    root /a/;
    }

    这时访问站点http://location/c访问的就是/a/c目录下的站点信息。如果你需要将这个目录展开,在这个location的末尾加上「autoindex on; 」就可以了

  4. 转发

    配置起来很简单比如我要将所有的请求到转移到真正提供服务的一台机器的8001端口,只要这样:

    location / {
    proxy_pass 172.16.1.1:8001;
    }

    这样访问host时,就都被转发到 172.16.1.1的8001端口去了。

  5. 负载均衡

    在upstream中指定了一组机器,并将这个组命名为myserver,这样在proxy_pass中只要将请求转义到myserver,这个upstream中我们就实现了在四台机器的反向代理加负载均衡。其中ip_hash指明了负载均衡是按ip地址进行分配,另外还有轮询、指定权重轮询、fail、url_hash几种调度算法。

    upstream myserver; {
    ip_hash;
    server 172.16.1.1:8001;
    server 172.16.1.2:8002;
    server 172.16.1.3;
    server 172.16.1.4;
    }
    location / {
    proxy_pass http://myserver;
    }

Nginx的安装配置的更多相关文章

  1. nginx初级安装配置

    nginx初级安装配置 转自:(lykyl原创)http://www.cnblogs.com/lykyl/archive/2012/11/21/2781077.html 实验环境:系统 CENTOS5 ...

  2. nginx+tomcat安装配置

    nginx+tomcat安装配置 # nginx+tomcat安装配置 #创建网站目录 mkdir -p /www/wwwroot cd /www #安装配置 wget http://mirrors. ...

  3. gerrit+nginx+centos安装配置

    安装环境 centos 6.8 gerrit-full-2.5.2.war 下载地址:https://gerrit-releases.storage.googleapis.com/gerrit-ful ...

  4. Nginx的安装配置和tomcat负载均衡

    Nginx简介 什么是nginx? Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.由俄罗斯的程序设计师Igor Sysoev所开发,官方测试ngi ...

  5. Nginx+nagios安装配置

    Nginx+nagios安装配置 [root@Nagios ~]# vi /etc/nginx/nginx.conf server { listen ; server_name localhost; ...

  6. nginx php-fpm安装配置 CentOS编译安装php7.2

    CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...

  7. 吴裕雄--天生自然Django框架开发笔记:Django Nginx+uwsgi 安装配置

    Django Nginx+uwsgi 安装配置 使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,需要一个可以稳定而持续的服务器,比如 ...

  8. centos 系统下安装FastDFS+nginx+fastdfs-nginx-module安装配置

    前言: 以前的项目上传的文件都是保存到本地或者是局域网内的共享文件夹下,由于数据量,服务器的负载均衡(分机的某些图片无法访问的问题处理)等因素的情况下,就想到用fastdfs来文件管理,花了几天时间硬 ...

  9. Nginx服务安装配置

    1.Nginx介绍 Nginx是一个高性能的HTTP和反向代理服务器,由俄罗斯人开发的,第一个版本发布于2004年10月4日.Nginx由于出色的性能,在世界范围内受到了越来越多人的关注,其特点是占有 ...

  10. Django Nginx+uwsgi 安装配置

    使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttp ...

随机推荐

  1. The method getDispatcherType() is undefined for the type HttpServletRequest

    在使用百度的ueditor的时候,老是报错: The method getDispatcherType() is undefined for the type HttpServletRequest 原 ...

  2. github for window的代理设置方法

    修改 .gitconfig 文件,主要是针对http 和 https进行修改,设置代理 [user] name = name email = mail@.com [http] proxy = 配置文件 ...

  3. Xcode清除缓存等

    Xcode出现一些错误的时候,有时候不是代码的问题,需要清理一下Xcode的缓存或者项目的Product等: 1. Product清理 1.1  Product-Clean 1.2  Product- ...

  4. java 基础三 下雪

    通过repaint()方法进行重画. import javax.swing.JFrame; import javax.swing.JPanel; import java.awt.Graphics; p ...

  5. oracle中merge方法

    先看SQL语句:merge into employee e using emps em on (e.emp_id=em.emp_id) when matched then  update set e. ...

  6. CORS浏览器跨域

    在SO上发现一个解释跨域很棒的,忍不住拿过来 链接在此:http://stackoverflow.com/questions/10636611/how-does-access-control-allo ...

  7. PHP发送和接收POST数据

    1. 发送post数据 $data = '{ "id": "17999030", "method": "sayHello" ...

  8. cmd导入导出

    2:用cmd进入命令行输入:tnsping cmstar就是测试172.18.13.200是否连接成功3:导入与导出,如下: 数据导出: 1 将数据库TEST完全导出,用户名system 密码mana ...

  9. vim - mark

    Using markshttp://vim.wikia.com/wiki/Using_marks1. There is no visible indication of where marks are ...

  10. 如何设置jvm内存

    本文向大家简单介绍一下进行JVM内存设置几种方法,安装Java开发软件时,默认安装包含两个文件夹,一个JDK(Java开发工具箱),一个JRE(Java运行环境,内含JVM),其中JDK内另含一个JR ...