美文网首页
2.搭建可用的静态资源web服务器-

2.搭建可用的静态资源web服务器-

作者: _小二_ | 来源:发表于2020-04-15 14:03 被阅读0次
    配置文件 nginx.conf:
    worker_processes  1;
    #pid        logs/nginx.pid;
    events {
        worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        log_format(配置的日志格式)  main(格式命名)  '$remote_addr(远端的ip地址) - $remote_user [$time_local(当时的时间)] "$request" '
                       '$status(响应的状态码 403,200等) $body_bytes_sent "$http_referer" '
                     '"$http_user_agent" "$http_x_forwarded_for"';  #- --这些内置的变量只要是安装了模块的,都可以直接使用
    
        access_log(access_log所处的位置,决定了他所属的请求)  logs/access.log(日志文件路径)  main(上面命名的日志格式);
    
        sendfile        on;
        #tcp_nopush     on;
    
        #keepalive_timeout  0;
        keepalive_timeout  65;
        #---------优化-------
        gzip  on;   #--压缩功能
        gzip_min_length  1; #--小于1字节的内容不进行压缩  压缩的最小值
        gzip_comp_level 2;  #-- 压缩级别
        gzip_types   text/plain application/x-javascript  text/css  application/xml  text/javascript  image/jpeg  image/png  image/gif;  #---指的是那些类型的文件需要被压缩  
        #---------优化----
        server {
        listen       80;   #--监听端口
        server_name  localhost; #-- 访问域名
        #charset koi8-r;
        access_log  logs/host.access.log  main; #(所有发自localhost请求域名的日志都会记录在这个日志文件)
        location /   (location后面加 / 表示对应url所有的请求){       #location有两种方式对应本地文件,一种是 root(存在一个问题,会把url中的路径带入到文件系统中),还有一种是 alias (与对应参数后面的文件系统一一对应, 若 alias  dlib/ 则是安装目录下的dlib 文件为资源文件 ) 
            root   html;
            autoindex on;   #如果当前开关打开,那么以 / 结尾,就会显示出对应的资源目录层级
            set $limit_rate 1k;  #限制nginx的响应速度  每秒传输 1k 字节--1k会非常慢
            index  index.html index.htm;
        }
        #-------反向代理服务器配置
       upstream(上游服务配置) local (当前服务命名为local){
            server  127.0.0.1:8080;  #反向代理服务器 127.0.0.1 指的是本机,,在upstream 可以添加多个server。
       }
       proxy_cache_path  /tmp/nginxcache(文件写在那个路径下) levels=1:2  keys_zone=my_cache:10m(缓存的关键字放在共享内存my_cache中,my_cache为10m大小)  max_size=10g inactive=60m use_temp_path=off;
       server {
          server_name  test.com;  #-- 访问本代理服务器的域名
          listen  80; # --端口
          location  / {
              proxy_set_header  Host   $host;  #--- 发送用户端访问域名给真实服务器,当使用反向代理时,用户端和代理服务器是一个链接,代理服务器和真实服务器是另一个链接,,使用proxy_set_header 可以设置用户端的数据,发送给真实服务器。例如 Host,X-Real-Ip,X-Forwarded-For等
              proxy_set_header  X-Real-Ip   $remote_addr; # --发送用户端的ip给真实服务器
              proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
              proxy_cache  my_cache; #--使用代理缓存 my_cache,,使用这个命令需要先配置 proxy_cache_path 参数
              proxy_cache_key  $host$url$is_args$args; # --缓存使用的key
              proxy_cache_valid   304 302 Id;   #---不返回的响应
              proxy_pass  http://local; # -- 反向代理配置,这里的locals指的是上面upstream的命名
          }
        }
        #error_page  404              /404.html;
    
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    

    }

    相关文章

      网友评论

          本文标题:2.搭建可用的静态资源web服务器-

          本文链接:https://www.haomeiwen.com/subject/lnbxvhtx.html