天天看点

nginx优化之http

http

http {
    include mime.types;
        default_type application/octet-stream;
        
        sendfile on;
        tcp_nopush on;
        #tcp_nodelay on;
        keepalive_timeout 65;
        server_names_hash_bucket_size 64;
      server_names_hash_max_size 2048;    
        server_tokens off;
        
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
        ssl_prefer_server_ciphers on;

        ##
        # Logging Settings
        ##
        #access_log /var/log/nginx/access.log;
        access_log off;
        error_log /var/log/nginx/error.log;
        
        gzip on;
        gzip_disable "msie6";
        include /etc/nginx/conf.d/*.conf;
}      

​相关解释​

include mime.types

多用途因特网邮件扩展,定义资源的媒体类型

default_type application/octet-stream

1.如果Web程序没设置,Nginx也没找到对应文件的扩展名的话,就使用默认的Type;

2.application/octet-stream是HTTP规范中Content-Type的一种,意思是 未知的应用程序文件 ,浏览器一般不会自动执行或询问执行;

3.可以避免浏览器自动播放文件

sendfile on

直接从一个文件描述符复制数据到另一个文件描述符;能够大大提高文件传输的效率

tcp_nopush on

默认值on,不能与tcp_nodelay同时打开

当有数据时,先别着急发送, 确保数据包已经装满数据, 避免了网络拥塞;

仅当开启sendfile时生效

tcp_nodelay on

默认值off,不能与tcp_nopush同时打开

有时要抓紧发货, 确保数据尽快发送, 提高可数据传输效率;

禁用Nagle 算法[默认],数据包立即发送出去,适用于长连接,优化了传输的packet效率

当一个连接进入到keep-alive时生效

keepalive_timeout

指定keep-alive连接持续多久,单位是秒

设置低些可以让ngnix持续工作的时间更长

server_names_hash_bucket_size

指定用于保存server_name散列表大小的“桶”

继续阅读