博客
关于我
nginx从理论到实践超详细笔记总结
阅读量:346 次
发布时间:2019-03-04

本文共 1572 字,大约阅读时间需要 5 分钟。

Nginx常用技能点总结:安装、配置与优化技巧

安装与启动

安装完成后,通过curl测试访问是否正常,确保防火墙设置正确。

基础命令

默认启动:./sbin/nginx
指定配置文件启动:./sbin/nginx -c /tmp/nginx.conf
快速停止:./sbin/nginx -s stop
优雅停止:./sbin/nginx -s quit
热装载配置:./sbin/nginx -s reload
日志重开:./sbin/nginx -s reopen
配置检查:./sbin/nginx -t

进程结构

  • master process:负责日志更新、热装载
  • worker process:处理客户端连接与请求

日志机制

访问日志存储在logs/access.log,记录客户端地址、时间、请求状态等信息。

处理机制

基于io多路复用,采用异步非堵塞模型。每个worker为单线程,多核环境下通过accept_mutex互斥锁分配请求。

常用配置案例

events { worker_connections 1024; }http {    include mime.types;    default_type application/octet-stream;    sendfile on;    keepalive_timeout 65;    server {        listen 80;        server_name localhost;        root html;        index index.html index.htm;        error_page 404 /404.html;        error_page 500 502 503 504 /50x.html;        location = /50x.html {            root html;        }    }}

配置优化

动静分离

location /static {    alias /usr/local/static/;}location ~* \.(gif|png|jpg|css|js) {    alias /usr/local/static/;}

防盗链

location ~* \.(gif|png|jpg|css|js) {    valid_referers none blocked *.idea.com;    if ($invalid_referer) {        return 403;    }    root /usr/local/static/;}

负载均衡

upstream backend {    server 192.168.43.191:8080 weight=5 fail_timeout=10s;    server 192.168.43.191:8089 weight=5 fail_timeout=10s;}

代理配置

location =/baidu.html {    proxy_pass http://www.baidu.com;}

日志格式

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;

通过以上配置,Nginx能够高效处理高并发请求,实现动静分离、反向代理、负载均衡等功能。

转载地址:http://ezte.baihongyu.com/

你可能感兴趣的文章
Objective-C实现knapsack背包问题算法(附完整源码)
查看>>
Objective-C实现knight tour骑士之旅算法(附完整源码)
查看>>
Objective-C实现knight Tour骑士之旅算法(附完整源码)
查看>>
Objective-C实现KNN算法(附完整源码)
查看>>
Objective-C实现KNN算法(附完整源码)
查看>>
Objective-C实现KNN算法(附完整源码)
查看>>
Objective-C实现knuth morris pratt(KMP)算法(附完整源码)
查看>>
Objective-C实现knuth-morris-pratt(KMP)算法(附完整源码)
查看>>
Objective-C实现Koch snowflake科赫雪花曲线算法(附完整源码)
查看>>
Objective-C实现koch snowflake科赫雪花算法(附完整源码)
查看>>
Objective-C实现KPCA(附完整源码)
查看>>
Objective-C实现KruskalMST最小生成树的算法(附完整源码)
查看>>
Objective-C实现kruskal克鲁斯卡尔算法(附完整源码)
查看>>
Objective-C实现kth order statistick阶统计量算法(附完整源码)
查看>>
Objective-C实现lamberts ellipsoidal distance朗伯椭球距离算法(附完整源码)
查看>>
Objective-C实现largest AdjacentNumber最大相邻数算法 (附完整源码)
查看>>
Objective-C实现largest subarray sum最大子数组和算法(附完整源码)
查看>>
Objective-C实现largestPrime最大素数的算法 (附完整源码)
查看>>
Objective-C实现lazy segment tree惰性段树算法(附完整源码)
查看>>
Objective-C实现LBP特征提取(附完整源码)
查看>>