debian

Debian下Nginx配置有哪些技巧

小樊
34
2025-08-13 01:26:21
栏目: 智能运维

以下是Debian下Nginx的配置技巧,涵盖基础设置、性能优化及安全增强:

一、基础配置技巧

  1. 站点配置管理

    • /etc/nginx/sites-available/下创建配置文件(如example.com.conf),通过符号链接到/etc/nginx/sites-enabled/启用。
    • 示例配置:
      server {  
          listen 80;  
          server_name example.com;  
          root /var/www/example.com;  
          index index.html;  
      }  
      
  2. 启用HTTPS

    • 使用Let’s Encrypt获取证书,通过certbot工具自动配置:
      sudo apt install certbot python3-certbot-nginx  
      sudo certbot --nginx -d example.com  
      
    • 配置HTTP重定向至HTTPS:
      server {  
          listen 80;  
          server_name example.com;  
          return 301 https://$host$request_uri;  
      }  
      

二、性能优化技巧

  1. 调整工作进程

    • 设置worker_processes为CPU核心数,worker_connections根据内存调整(如1024-65535)。
    • 启用epoll事件模型(Linux专用):
      events {  
          use epoll;  
          worker_connections 65535;  
      }  
      
  2. 资源与传输优化

    • 启用Gzip压缩:
      gzip on;  
      gzip_types text/css text/javascript application/json;  
      
    • 启用sendfiletcp_nopush提升文件传输效率:
      sendfile on;  
      tcp_nopush on;  
      
    • 静态文件缓存:
      location ~* \.(jpg|css|js)$ {  
          expires 30d;  
          add_header Cache-Control "public";  
      }  
      

三、安全增强技巧

  1. 访问控制

    • 限制IP访问或目录权限:
      location /admin {  
          allow 192.168.1.0/24;  
          deny all;  
      }  
      
    • 防止目录遍历:
      location ~ /\. {  
          deny all;  
      }  
      
  2. SSL/TLS优化

    • 禁用不安全的协议和加密套件:
      ssl_protocols TLSv1.2 TLSv1.3;  
      ssl_ciphers EECDH+AESGCM:AES256+EECDH;  
      ssl_prefer_server_ciphers on;  
      
    • 启用HSTS(强制HTTPS):
      add_header Strict-Transport-Security "max-age=31536000";  
      

四、常用命令与维护

五、工具与监控

以上技巧可根据实际需求组合使用,配置前建议备份原始文件,修改后通过nginx -t验证语法正确性。

0
看了该问题的人还看了