nginx/conf/nginx.conf 文件 说明

#user  nobody;        #配置 worker 进程运行用户 默认 nobody
worker_processes  4 ; # 配置工作进程数目,推荐 cpu 的线程数或者核心数,2双核4线程 配置 4 为宜#error_log  logs/error.log;    # 配置日志文件位置,需要的把注解去掉。
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;#pid        logs/nginx.pid;    # 进程pid 可在这个目录下查看,也可以通过 ps -ef | grep nginx 查看#配置worker 的连接数 也就是  上面设置的worker_processes  * worker_connections =  nginx 支持的总连接数。只有硬件够好。nginx 最大可有支持 5w 并发。
events {worker_connections  1024;
}http {include       mime.types;  # 支持的格式 (具体可以去 conf目录下查看 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;   # 开启gzip 压缩输出# 配置 tomcat_1 在 8888 端口upstream tomcat1{server 127.0.0.1:8888;}# 配置 tomcat_2 在 9999 端口upstream tomcat2{server 127.0.0.1:9999;}# 外网访问  www.myyuming.com/haha  代理到 Tomcat_1server {listen    80;server_name  www.myyuming.com/haha;location / {proxy_pass http://tomcat1;}#保措时跳转到 下面的对于页面。error_page   404  500 502 503 504  /50x.html;location = /50x.html {root   /usr/local/nginx/html;}}# 外网访问  www.myyuming.com/hehe 代理到 Tomcat_2server {listen    80;server_name  www.myyuming.com/hehe ;location / {proxy_pass http://tomcat2;}#保措时跳转到 下面的对于页面。error_page   404  500 502 503 504  /50x.html;location = /50x.html {root   /usr/local/nginx/html;}}# include /etc/nginx/conf/*.conf;   # 表示可以配置子配置文件#配置 https 服务# HTTPS server##server {#    listen       443 ssl;#    server_name  localhost;#    ssl_certificate      cert.pem;#    ssl_certificate_key  cert.key;#    ssl_session_cache    shared:SSL:1m;#    ssl_session_timeout  5m;#    ssl_ciphers  HIGH:!aNULL:!MD5;#    ssl_prefer_server_ciphers  on;#    location / {#        root   html;#        index  index.html index.htm;#    }#}}

配置完成后收益下面的命令检查配置是否正常:

命令:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t

重启服务命令:

命令: /usr/local/nginx/sbin/nginx -s reload

配置nginx 静态资源

假设:这个liunx 云服务器的 域名为 www.xxx.com

举例:我在liunx 的 更目录下创建了一个 test文件夹。在里面创建了一个 hello.html 文件

命令: cd /
命令: mkdir test
命令: cd test
命令: mkdir hello
命令:vi /test/hello/hello.html
-----------------vi 编辑模式---------------------
编辑:按 i 进入 输入模式
编辑: 输入 hello world~~!
编辑:按 ESC  --> 冒号--》 wq --> 回车。
--------------编辑nginx.conf配置文件--------------------
命令:iv /usr/local/nginx/conf/nginx.conf

编辑如下(找到nginx。conf server{…location …} 的 位置,修改这个test/hello/hello.html 为nginx 首页)

    server {... ....  location / {            # / : 表示 网站的更目录   http://www.xxx.com root   /test/hello;        # 根目录index  hello.html;     #默认访问 首页的文件。}# 也可以配置其他的  这样访问地址就成了  http://www.xxx.com/hello   # 这里特别注意   /hello 会被当成路径来访问 nginx 实际访问地址是    /test/hello/hello.html(我在这里被坑了很久  T^T 大家一定要注意)location /hello{root    /test;      index  hello.html;  }... ....}

重启nginx 服务器:

命令:/usr/local/nginx/sbin/nginx -s reload

好了配置完成了,现在下面两个地址都可以访问这个网页了:

http://www.xxx.com
http://www.xxx.com/hello

配置nginx 为负载均衡

配置方式如下:

负载均衡模式:

一共有4种

轮询 (默认)

权重(图上 weight 就是权重方式) 通过 配置 weight, 进行轮询,3 就轮询3次 1就轮询1次。可根据不同的计算机硬件配置区分配

ip_hash:将ip地址hash后指定给某台服务器,以后这个用户就只访问这台服务器,可以解决session共享问题,缺点,如果某台服务器挂了,那么这个服务器上的所有session 也就没了,一般不使用。

最少连接:ngin会选择多个服务器中连接数最少的那一台,有点:智能,缺点:所有服务器配置必须一样,否则,可能 1核 和 8核 分配的就是一样的连接数。

服务器模式

upstream backserver{server 192.168.0.0.1:8001;server 192.168.0.0.1:8002 backup;  #备份 当上面那台服务器挂了,才会使用这一台。否则不会访问。
}upstream backserver{server 192.168.0.0.1:8001;server 192.168.0.0.1:8002 down;  #意味这台服务器为 关闭状态,nginx 不会访问他,用于服务升级时可以使用。
}

动静分离

什么是动静分离: 这里涉及到 并发访问的问题。
由于 nginx 只是作为反向代理,消息转发,消耗是极小的,可以达到 5w并发量。而 tomcat 等服务器 需要处理动态数据。所以一台tomcat 并发访问一般在 500 以内,超过 250 的并发量 响应速度就会在1秒以上了。
所以为了减轻 tomcat的访问压力,我们将应用内的静态资源 访问使用 nginx 来处理。这样可以大大的减轻tomcat 的负担。

这里我以tomcat为例。
1、在 tomcat webapp 目录下创建一个 test 文件夹

webapp目录下   mkdir  test

2、复制 tomcat 的 ROOT 文件的文件到 test 中去。

 ROOT目录下   cp ./* ./../test

3、剪切test 文件中的tomcat.png 到 /home/static/test 目录下

 test 目录下mkdir -p /home/static/testmv tomcat.png  /home/static/test

4、配置 nginx .conf 文件
测试应用文件目录为:

 应用部署:   tomcat/webapps/test           #test应用     8080 端口静态资源:   /home/static/test/                 # test文件夹下放自己 test 是应用名称

这里test是应用名称

         upstream www.test.com {server 127.0.0.1:8080;  #tomcat linux 下的访问地址。}#     这里特别要注意目录结构:server{ location /test {   #把应用名称 配置过来proxy_pass http://www.test.com;}location ~.*\.(css|js|image|gif|png)$ {root /home/static; #这里只写到 静态资源的上一层目录就行。}}

5、启动tomcat 和 nginx
nginx -s reload
6、这时你会发现你移除掉的tomcat.png 依然显示出来了。

##子配置文件: 在 conf文件加下 ,配置 xxx.conf 文件依然生效。
在配置文件最近下面 的 } 内加入

   include /etc/nginx/conf/*.conf;   # 表示可以配置子配置文件}
server {listen 82;server_name open.liyuecd.com;rewrite ^(.*) https://$server_name$1 permanent;
}server {listen 443;server_name open.liyuecd.com;
#       ssl on;ssl_certificate /etc/nginx/cert/open/open.liyuecd.com.pem;ssl_certificate_key /etc/nginx/cert/open/open.liyuecd.com.key;ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。ssl_prefer_server_ciphers on;location / {proxy_set_header X-Real_IP $remote_addr;proxy_set_header Host $host;proxy_set_header X_Forward_For $proxy_add_x_forwarded_for;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection 'upgrade';proxy_pass http://47.108.201.110:82/;}
}

nginx 二 配置conf相关推荐

  1. Nginx(二) 配置与调试

    nginx 主配置文件在安装目录下的conf中,名字为nginx.conf: 主配置文件主要分为4部分:main(全局设置).server(主机设置).upstream(负载均衡服务器设置)和loca ...

  2. nginx 多配置(.conf)的使用

    通常情况下我们在一个.conf 承载好多服务代理的配置,使用.conf 文件过大,过长,以至于管理难,有时修改某个小配置,由于重起或重截配置文件,使用服务受影响.因此使用多配置组合的方式进行管理很有必 ...

  3. Nginx(二):安装、配置、常用命令

    1.Nginx在Linux操作系统中的安装 这里简单介绍一下nginx的安装了 1.1.前期准备 在安装nginx之前我们要提前准摆好它的编译工具以及库文件:zlib.poenssl. 还有有让Ngi ...

  4. nginx学习文档之二 配置负载均衡-windows配置负载均衡

    #windows配置负载均衡 nginx+tomcat负载均衡的意思大概如下图: 所有请求先经过nginx服务器,然后由nginx服务器进行转发,将请求根据配置需要分发给指定的tomcat服务器 ## ...

  5. 教程 | 用安卓手机搭建 web 服务器(二)—— Nginx 安装配置

    上一步完成了必要的软件安装,接下来需要在 Linux 系统上安装 nginx. Nginx("engine x")是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能 ...

  6. 2022年4月10日记:Linux服务器开发,King,Nginx反向代理与系统参数配置conf原理

    Nginx反向代理与系统参数配置conf原理 前言 nginx成功开源的原因: nginx三个可控入口: 惊群 总结 前言 今天学习Nginx反向代理,可以说是慕名而来.从整体上看,我对Nginx的了 ...

  7. Nginx其他配置——日志管理、网页压缩、访问控制

    一.Nginx日志切割 在生产环境中每一天的日志文件都是要打包备份的,如果每天都手动的去截取日志,重命名这样就很不方便,所以我们编写一个脚本并建立一个定时任务来进行这些工作 1.编辑脚本文件,加权限 ...

  8. Nginx在windows上安装 及 Nginx的配置及优化

    前言 Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru 站 ...

  9. nginx 没有sbin目录_CentOS7下Nginx+ModSecurity配置、安装、测试教程

    " 最近在工作上遇到一点问题,问了大佬.百度,都没有很好地解决:经过大量搜索查阅以及试验,终于将问题解决.于是写下这篇文章以提醒自己,也可供读者参考." 环境:CentOS-7-x ...

  10. linux-centerOs6.8安装nginx与配置

    一:安装nginx 1.安装gcc(命令:yum install gcc)备注:可以输入gcc -v查询版本信息,查看是否自带安装 2.安装pcre(命令:yum install pcre-devel ...

最新文章

  1. ES报the same id but is a different node instance
  2. 高德地图SDK大致使用
  3. FISCO BCOS 2.0发布:新增群组架构克服吞吐瓶颈
  4. jQuery 常用方法总结
  5. 前端学习(1147):ES6学习目标
  6. 天天用Redis,持久化方案你又知道哪些?
  7. 听云数据库管理平台NetopGO简介
  8. Python扩展库scipy.misc中图像转换成pillow图像
  9. Pycharm导入MySQL驱动包误区
  10. B站 汇编语言 视频 教程
  11. Ubuntu 18.04联网问题(已解决)
  12. Camera-roll,pitch,heading
  13. kubernetes指南--弹性伸缩
  14. 加拿大各省接受公立教育的初始年龄汇总 — 供携子女赴加的访学、博后参考
  15. 传奇私服搭建网站的几种方法
  16. Vue SEO 优化 使用 Vapper SSR 服务器渲染框架 搭建项目 新手教程
  17. Hadoop性能测试工具
  18. PS: Deep Neural Networks Are Easily Fooled___CVPR2015
  19. 数字与字符串,,,字符串与字符串之间比较大小
  20. 详解Python中的File(文件)操作

热门文章

  1. Staking八月排行榜 | TokenInsight
  2. 【Java例题】3.6 计算arcsin(x)的值
  3. Windowed reading and writing
  4. 水泥行业超低排放政策频发,企业如何完成超低排放改造?
  5. MML ch 10 主成分分析降维(Dimensionality Reduction with Principal Component Analysis)
  6. 有个程序媛上司是什么体验
  7. 机械制造作业考研题目答案分享——回转体的加工
  8. 用Python做一个Mean Rerversion策略
  9. 计算机系统基础实验2——bomb
  10. (转置矩阵)将一个3x3、4x4矩阵转置后输出