Nginx的安装配置
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;
}
- listen 指定监听端口
- server_name 指定ip或域名
- index 设定访问的默认首页地址
- 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;
}
- location匹配规则
~ 波浪线表示执行一个正则匹配,区分大小写
~* 表示执行一个正则匹配,不区分大小写
^~ 表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般来匹配目录
= 进行普通字符精确匹配 - 匹配例子
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 - 静态文件映射
访问文件的配置主要有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; 」就可以了
- 转发
配置起来很简单比如我要将所有的请求到转移到真正提供服务的一台机器的8001端口,只要这样:
location / {
proxy_pass 172.16.1.1:8001;
}这样访问host时,就都被转发到 172.16.1.1的8001端口去了。
- 负载均衡
在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的安装配置的更多相关文章
- nginx初级安装配置
nginx初级安装配置 转自:(lykyl原创)http://www.cnblogs.com/lykyl/archive/2012/11/21/2781077.html 实验环境:系统 CENTOS5 ...
- nginx+tomcat安装配置
nginx+tomcat安装配置 # nginx+tomcat安装配置 #创建网站目录 mkdir -p /www/wwwroot cd /www #安装配置 wget http://mirrors. ...
- gerrit+nginx+centos安装配置
安装环境 centos 6.8 gerrit-full-2.5.2.war 下载地址:https://gerrit-releases.storage.googleapis.com/gerrit-ful ...
- Nginx的安装配置和tomcat负载均衡
Nginx简介 什么是nginx? Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.由俄罗斯的程序设计师Igor Sysoev所开发,官方测试ngi ...
- Nginx+nagios安装配置
Nginx+nagios安装配置 [root@Nagios ~]# vi /etc/nginx/nginx.conf server { listen ; server_name localhost; ...
- nginx php-fpm安装配置 CentOS编译安装php7.2
CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...
- 吴裕雄--天生自然Django框架开发笔记:Django Nginx+uwsgi 安装配置
Django Nginx+uwsgi 安装配置 使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,需要一个可以稳定而持续的服务器,比如 ...
- centos 系统下安装FastDFS+nginx+fastdfs-nginx-module安装配置
前言: 以前的项目上传的文件都是保存到本地或者是局域网内的共享文件夹下,由于数据量,服务器的负载均衡(分机的某些图片无法访问的问题处理)等因素的情况下,就想到用fastdfs来文件管理,花了几天时间硬 ...
- Nginx服务安装配置
1.Nginx介绍 Nginx是一个高性能的HTTP和反向代理服务器,由俄罗斯人开发的,第一个版本发布于2004年10月4日.Nginx由于出色的性能,在世界范围内受到了越来越多人的关注,其特点是占有 ...
- Django Nginx+uwsgi 安装配置
使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttp ...
随机推荐
- 实验五(简单嵌入式WEB服务器实验)问题总结
实验五问题总结 问题链接:<信息安全系统设计基础>实验五实验报告 虽然将07_httpd文件中全部拷贝进了bc中,文件夹中拥有Makefile文件,但是还是无法通过make得到该文件夹中c ...
- JAVA中去掉空格经典整理
JAVA中去掉空格经典整理 JAVA中去掉空格 1. String.trim() --------------trim()是去掉首尾空格 2.str.replac ...
- vue-router 创建 vue 单页应用示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JS中isPrototypeOf 和hasOwnProperty 的区别 ------- js使用in和hasOwnProperty获取对象属性的区别
JS中isPrototypeOf 和hasOwnProperty 的区别 1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的 ...
- Html5三维全景
先看DEMO:http://think.weiyingjia.cn/liuming/quanjing/out.html 准备: 1.一张或多张全景图片素材 2.pano2VR软件,链接:http ...
- Computop支付网关(一) credit Card
1.界面没有中文,只能选择英文 sp – Spanish; en – English; ca – Catalan; fr – French; de – German; du – Dutch; it – ...
- [转]8年javascript知识点积累
http://www.cnblogs.com/tylerdonet/p/5543813.html
- U家面试prepare: Serialize and Deserialize Tree With Uncertain Children Nodes
Like Leetcode 297, Serialize and Deserialize Binary Tree, the only difference, this is not a binary ...
- React常用的API说明
楼主刚开始学习react,感受到了他的博大精深,看到很多莫名的用法,不知云云,找了很多没有找到参考手册,只有在中文社区和react官方看了一些,收集了一些比较常用的API,有补充的可以楼下评论补充.后 ...
- 关于ssh_copy_id脚本解析
[oldgirl@module ~]$ more /usr/bin/ssh-copy-id #!/bin/sh # Shell script to install your public key on ...