1. centos 一键安装nginx环境

$   yum install nginx根据提示 进行确认 下一步 即可安装完毕;
服务器默认根目录为 : /usr/share/nginx/html.
nginx 配置目录为 :/etc/nginx/nginx.conf.nginx操作命令:
启动  service nginx start
停止  service nginx stop
重启  service nginx restart

2. linux安装ngnix

1. 安装ngnix的编译环境. 参考ngnix安装手册.doc
2. 把ngnix的代码上传到linux.
3. 解压代码 tar -zxvf ngnix-1.8.0.tar.gz
4. 注意:上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
5. 配置makefile参考安装手册 configure 参数设置, 复制执行一遍就会出现makefile
6. 编译 执行 make 命令
7. 安装 执行 make install ,成功后安装的目录为configure参数设置的--prefix=/usr/local/nginx 下面.
8. 查看 cd /usr/local/nginx/sbin 下 是否有可执行文件 ngnix 或者安装nginx
[root@localhost]tar zxvf nginx-1.8.0.tar.gz
[root@localhost] cd nginx-1.8.0
[root@localhost]  ./configure && make && make install

3. docker 安装 ngnix

Dockerfile 文件:FROM nginx:1.15-alpine
COPY cms-page.conf /etc/nginx/conf.d/default.conf
WORKDIR /app
COPY ./dist /app
cms-page.conf 文件:server {listen  8080;location ^~/apis {rewrite  ^~/apis/(.*)$ /$1 break;proxy_pass https://www.xiangchuxing.cn:8089;}location / {root /app;try_files $uri $uri/ /index.html;index  index.html;}location ~ (.*\.json) {root  /app;error_page 405 =200 $1;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}
}
docker-compose.yml 文件:version: '3'
services:cms-nginx:image: "nginx:1.15-alpine"container_name: cms-nginxnetworks:- nginx_nwports:- "8080:8080"cms-page:build: registry.git.brightcns.cn/official-website/cms-page:master-5720container_name: cms-pagedepends_on:- cms-nginx
networks:nginx_nw:driver: bridge

4. ngnix应用场景

1. http服务器.Nginx是一个http服务可以独立提供http服务.可以做网页静态服务器
2. 虚拟主机。可以实现在一台服务器虚拟出多个网站.例如个人网站使用的虚拟主机.
3. 反向代理,负载均衡
nginx代理示例
server {listen       80;server_name  localhost;location / {root   /home/images/;index  index.html index.htm;}
}

5. ngnix实现虚拟主机配置

可以实现在同一台服务器上实现多个网站,而且网站间互相不干扰.
同一个服务器可能有一个ip,网站需要80端口.网站的域名不同.
区分不同网站有3种方式:1). ip区分2). 端口区分3). 域名区分
5.1基于ip的虚拟主机配置
1. nginx的配置文件#user  nobody;
worker_processes  1;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {worker_connections  1024;
}
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"';#access_log  logs/access.log  main;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;#gzip  on;server { #一个Server就是一个虚拟主机listen       80;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm;}}
}
2. 基于ip的虚拟主机配置 , 一个server就是一个虚拟主机,在配置文件添加serverserver {listen       80;server_name  192.168.25.141;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html-141;index  index.html index.htm;}
}server {listen       80;server_name  192.168.25.100;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html-100;index  index.html index.htm;}
}
3. nginx重新加载配置文件 ./ngnix -s reload
5.2 基于端口的虚拟主机配置
注: 首先关闭防火墙,原因若81,82 端口不开放会访问不到.server {listen       81;server_name  192.168.25.141;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html-81;index  index.html index.htm;}
}
server {listen       82;server_name  192.168.25.141;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html-82;index  index.html index.htm;}      }
5.3 基于域名的虚拟主机
注: 都用80端口,即ip相同,端口相同,区分域名(最常用).
一个域名只能绑定一个ip地址,一个ip地址可以被多个域名绑定.
添加基于域名虚拟主机的配置: server {listen       80;server_name  www.itheima.com;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html-www;index  index.html index.htm;}
}
server {listen       80;server_name  hehe.itheima.com;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html-hehe;index  index.html index.htm;}
}

6. ngnix反向代理

nginx只做请求的转发,后台有多个http服务器提供服务,
nginx的功能就是把请求转发给后面的服务器,决定把请求转发给谁.
nginx的反向代理配置:upstream tomcatserver1 {server 192.168.25.141:8080;
}
upstream tomcatserver2 {server 192.168.25.141:8081;
}
server {listen       80;server_name  8080.itheima.com;#charset koi8-r;#access_log  logs/host.access.log  main;location / {proxy_pass   http://tomcatserver1;index  index.html index.htm;}
}
server {listen       80;server_name  8081.itheima.com;#charset koi8-r;#access_log  logs/host.access.log  main;location / {proxy_pass   http://tomcatserver2;index  index.html index.htm;}
}如果在同一个域名下有多台服务器提供服务,此时需要nginx负载均衡.

7. nginx负载均衡

7.1 负载均衡原理
1. 负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性.
2. 负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务.
7.2 负载均衡需求
  nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至 tomcat服务器。nginx负载均衡服务器:192.168.25.141tomcat1服务器:192.168.25.141:8080tomcat2服务器:192.168.25.141:8081

8. ngnix高可用

解决高可用的方案就是添加冗余。(添加备份机)通过 keepalived 对主备nginx实时心跳检测 (keepalived nginx)
参考 keepalived nginx 文档.   

本文由博客一文多发平台 OpenWrite 发布!

ngnix介绍及使用相关推荐

  1. 运维学习 之 Ngnix配置(详细版)

    互联网运维技术之Ngnix环境搭建 目录:1>关于ngnix介绍: 2>ngnix环境搭建 1.1背景介绍 web服务器一般指网站服务器,web服务器可以向浏览器等web客户端提供文档,也 ...

  2. 详解基于busybox、dropbear、ngnix制作完整的嵌入式Linux系统

    说明:         <一>:查看此博文,建议查看笔者上一篇博文(Linux启动过程),因为只有在完全了解Linux系统启动流程及一些配置文件的相关性,在阅读此博文才能有思路,理解起来更 ...

  3. NGINX由入门到精通:Nginx介绍

    原文:http://www.aosabook.org/en/nginx.html nginx(发音"engine x")是俄罗斯软件工程师Igor Sysoev开发的免费开源web ...

  4. #研发解决方案介绍#基于ES的搜索+筛选+排序解决方案

    郑昀 基于胡耀华和王超的设计文档 最后更新于2014/12/3 关键词:ElasticSearch.Lucene.solr.搜索.facet.高可用.可伸缩.mongodb.SearchHub.商品中 ...

  5. 简单的DPDK介绍与分析

    DPDK介绍及分析 什么是DPDK Intel® DPDK 全称 __Intel Data Plane Development Kit__,是intel提供的数据平面开发工具集,为Intel arch ...

  6. 在Ngnix上部署Flask应用

    <Flask项目支持https>这一篇介绍的是在Flask自带server上添加SSL,毕竟不适合用于生产环境.本篇介绍适用于生产环境的Flask+SSL部署方法,需要借助Ngnix. F ...

  7. .NET遇上Docker - 使用Docker Compose组织Ngnix和.NETCore运行

    本文工具准备: Docker for Windows Visual Studio 2015 与 Visual Studio Tools for Docker 或 Visual Studio 2017 ...

  8. Tengine-Ngnix高级版

    转载自 Tengine-Ngnix高级版 Tengine介绍 Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的 ...

  9. Ngnix的TCP和UDP负载平衡配置

    Ngnix的TCP和UDP负载平衡配置 本章介绍如何使用NGINX Plus和NGINX开源来代理和负载均衡TCP和UDP流量. 介绍 先决条件 配置反向代理 配置TCP或UDP负载平衡 配置健康检查 ...

最新文章

  1. python列表嵌套字典取值_Python基础语法:你不得不知的几种变量类型
  2. linux c 判断文件打开文件,Linux 用C语言判断文件和文件夹
  3. 【emWin】例程二十五:窗口对象——Iconview
  4. Struts2开发基本步骤
  5. Linux SSH命令使用大全
  6. 一步步在SAP Cloud Platform上创建HANA实例并使用
  7. mysql启动关闭步骤_MYSQL的连接管理与启动关闭流程
  8. 图论--Dijkstra算法总结
  9. Mac中搭建Kubernetes
  10. Mac OS/Linux命令查询网络端口占用情况
  11. 学java需要学c语言吗?
  12. 操作技巧——保障无线上网的技巧
  13. CocoaPods加载第三方库
  14. 城建坐标与经纬度转换工具
  15. window 10自带照片查看软件不能查看下一张图片
  16. 【微信数据迁移】微信数据怎么恢复到另一部手机
  17. ios模拟器安装app
  18. (黑客游戏)HackTheGame1.21 过关攻略
  19. MYSQL-JDBC数据库实战-宠物商店
  20. 新手转行学大数据开发难吗?新手学需要注意的6个方面!

热门文章

  1. 笔记本电脑Win7安装NVIDIA显卡驱动,提示缺少kb4474419和kb4490628解决方案图文教程
  2. Web 1.0、Web 2.0 和 Web 3.0 之间的比较
  3. 万维网之父 65 岁创业,原因与你我都有关
  4. 德鲁伊连接池学习笔记
  5. unity实现一个动态图集
  6. 成人弱视患者福音!可借助AR头显恢复视觉功能
  7. 《足球与互联网产品》2:从欧洲杯感悟联网产品团队
  8. 告别被拒,如何提升iOS审核通过率(下篇)——应用内容检查大法与提审资源检查大法...
  9. OS X Mavericks 10.9.5 (13F34) bt下载地址
  10. mysql inner join 效率_mysql的大小表前后顺序对inner join的效率有影响吗?