Nginx的使用经验小结

  

<强> Nginx

  

<强> Nginx简单介绍

  

一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器
  

  

<强> Nginx命令参数

  

nginx - t测试配置是否正确
  nginx - s重载加载最新配置
  nginx - s停止立即停止
  nginx - s退出优雅停止
  nginx - s重新重新打开日志
  猫杀死-USR2/usr/local/nginx/logs/nginx.pid快速重启
  

  

<强> Nginx全局段配置

  

worker_processes 1;工作进程为1个CPU数量*核数
  事件区段网卡请求80 443 Nginx触发事件
  

  

<强> Nginx配置虚拟主机

  


  server_name
  位置
  

  

<强> Nginx日志管理

  

*系统默认日志格式:log_format主要的remote_addr request_length美元body_bytes_sent request_time美元[s]——[$ time_local] ' '“请求”美元地位http_referer美元”——" " $ http_user_agent " server_name server_addr美元http_x_forwarded_for http_x_real_ip美元的;
  *自定义日志格式:log_format简单“remote_addr——美元请求”
  *系统默认日志释义:远程IP -远程用户/用户时间请求方法请求身体长度长度推荐人来源信息http-user-agent用户代理/蜘蛛被转发请求的原始IP http_x_forwarded_for在经过代理是代理把你的本来的IP加在此头信息中,传输你的原始IP
  

  

<强> Nginx-Laravel5项目搭建

  

窗口上传本地项目使用secureCRT-sftp将得到命令上传sftp连接会话,远程:cd本地:lcd, lpwd, *。zip
  500年Laravel5返回权限修改:1。chmod 777 - r存储2。chmod 777 - r引导/缓存/
  配置env: vi .env修改数据库配置相关参数
  执行php工匠迁移创建数据表
  

  

<强> Nginx支持pathinfo
  

        #典型配置   ~ \位置。php $ {   根html;   fastcgi_pass 127.0.0.1:9000;   fastcgi_index index . php。   fastcgi_param SCRIPT_FILENAME DOCUMENT_ROOT fastcgi_script_name美元;   包括fastcgi_params;   }      #修改第1 6行支持pathinfo      位置~ \。php(. *) ${#正则匹配。php后的pathinfo部分   根html;   fastcgi_pass 127.0.0.1:9000;   fastcgi_index index . php。   fastcgi_param SCRIPT_FILENAME DOCUMENT_ROOT fastcgi_script_name美元;   fastcgi_param PATH_INFO 1美元;#把pathinfo部分赋给PATH_INFO变量   包括fastcgi_params;   }      之前      

<强> Nginx支持URL重写

  

1。如果不是资源文件就重写
  

        如果(!- e request_filename美元){   重写(. *)/index . php/1美元;   }   之前      

2。try_files
  

  

<代码> try_files uri uri//index . php # 63美元;args美元;
  

  

<强> Nginx反向代理与动静分离

  

用Nginx做反向代理用proxy_pass,以反向代理为例,Nginx不自己处理图片的相关请求,而是把图片的请求转发给Apache处理。

        位置~ \ (jpg | jpeg | png | gif) $ {   proxy_pass HTTP://IP:港口;   }   之前      

反向代理导致了后端服务器接到客户端IP为前端服务器的IP而不是真正的IP解决方案

        位置~ \ (jpg | jpeg | png | gif) {   proxy_set_header X-Forwarded-For remote_addr美元;   proxy_pass IP:港口;   }         之前      

<强> Nginx集群和负载均衡

  

上游{}模块把多台服务器加入到一个组然后memcache通过,fastcgi_pass, proxy_pass=比;上游组

  

配置上游
  

        上游网络{   服务器IP: 8080重量=1 max_fails=2 fail_timeout=30年代;   服务器IP2:80重量=1 max_fails=2 fail_timeout=30年代;   }      之前      

,下游调用
  

        位置~ \ (jpg | png | gif | jpeg) {   proxy_set_header X-Forwarded-For remote_addr美元;   proxy_pass http://web;   }   之前      

负载均衡常见的策略释义

  

基于cookie值区别做负载均衡(Nginx粘性们模块)
  ,基于URI利用一致性哈希算法做均衡(NginxHttpUPstreamConsistentHash模块)
  ,基于IP做负载均衡

Nginx的使用经验小结