• 常用的 Nginx 配置代码


    Listen To Port

    server {
      # Standard HTTP Protocol
      listen 80;
    
      # Standard HTTPS Protocol
      listen 443 ssl;
    
      # For http2
      listen 443 ssl http2;
    
      # Listen on 80 using IPv6
      listen [::]:80;
    
      # Listen only on using IPv6
      listen [::]:80 ipv6only=on;
    }

    Access Logging

    server {
      # Relative or full path to log file
      access_log /path/to/file.log;
    
      # Turn 'on' or 'off'
      access_log on;
    }

    Domain Name

    server {
      # Listen to yourdomain.com
      server_name yourdomain.com;
    
      # Listen to multiple domains
      server_name yourdomain.com www.yourdomain.com;
    
      # Listen to all domains
      server_name *.yourdomain.com;
    
      # Listen to all top-level domains
      server_name yourdomain.*;
    
      # Listen to unspecified Hostnames (Listens to IP address itself)
      server_name "";
    
    }

    Static Assets

    server {
      listen 80;
      server_name yourdomain.com;
    
      location / {
              root /path/to/website;
      } 
    }

    Redirect

    server {
      listen 80;
      server_name www.yourdomain.com;
      return 301 http://yourdomain.com$request_uri;
    }
     
     
    server {
      listen 80;
      server_name www.yourdomain.com;
    
      location /redirect-url {
         return 301 http://otherdomain.com;
      }
    }

    Reverse Proxy

    server {
      listen 80;
      server_name yourdomain.com;
    
      location / {
         proxy_pass http://0.0.0.0:3000;
         # where 0.0.0.0:3000 is your application server (Ex: node.js) bound on 0.0.0.0 listening on port 3000
      }
    
    }

    Load Balancing

    upstream node_js {
      server 0.0.0.0:3000;
      server 0.0.0.0:4000;
      server 123.131.121.122;
    }
    
    server {
      listen 80;
      server_name yourdomain.com;
    
      location / {
         proxy_pass http://node_js;
      }
    }

    SSL

    server {
      listen 443 ssl;
      server_name yourdomain.com;
    
      ssl on;
    
      ssl_certificate /path/to/cert.pem;
      ssl_certificate_key /path/to/privatekey.pem;
    
      ssl_stapling on;
      ssl_stapling_verify on;
      ssl_trusted_certificate /path/to/fullchain.pem;
    
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      ssl_session_timeout 1h;
      ssl_session_cache shared:SSL:50m;
      add_header Strict-Transport-Security max-age=15768000;
    }
    
    # Permanent Redirect for HTTP to HTTPS
    server {
      listen 80;
      server_name yourdomain.com;
      return 301 https://$host$request_uri;
    }

    来源:https://vishnu.hashnode.dev/nginx-cheatsheet

  • 相关阅读:
    [Java][Android][Process] 分享 Process 运行命令行封装类型
    UVA 11992
    2014扬声器的信息中国建筑师大会
    POJ 1745 Divisibility (线性dp)
    ListView 实现多选/无线电
    UVa 11587
    zoj 2156
    [TroubleShooting] The server network address can not be reached or does not exist
    oracle,如何查看视图结构,获得视图中的字段名称、字段类型、字段长度等。
    实现文件上传,以及表单提交成功的回调函数
  • 原文地址:https://www.cnblogs.com/guanxiaohe/p/15598187.html
Copyright © 2020-2023  润新知