Nginx学习笔记

写之前吐槽一发。。发现自己学的越来越杂了,好焦躁的感觉,需要刷题获得快乐=。=

1. 介绍

Nginx是一款可以用于配置Web服务器的软件。

2. 安装

系统是Ubuntu16.06,没有安装过相关的任何软件

  (1)配置环境

    首先安装依赖项以及编译器

sudo apt-get install openssl libssl-dev    
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get  build-dep  gcc

重启nginx
service nginx reload
sudo nginx -s reload
测试nginx
service nginx -t

  (2)安装Nginx

    安装后,可以在浏览器访问http://your_ip_address,如网页显示Nginx相关信息,则安装正确。

sudo apt-get install nginx

3. 了解Nginx

    默认Nginx被安装在/etc/nginx目录下,从目录内,我们可以看到以下文件

     

    其中sites-enabled文件夹下存有用于显示的页面

    sites-available文件夹内用于管理不同的网站。

    ln -s /etc/nginx/sites-available/dotcom /etc/nginx/sites-enabled/dotcom

    (1)配置静态服务器

    Nginx配置文件中含有

    Server{}部分,用于配置listen端口以及server_name等参数

    我们可以使用root变量,将主页链接到您主机上的某个文件夹中的index.html文件夹中

    server {
        listen 80;
        server_name example.com;
        root /var/www/example;

      

      location / {...}
    }

    Server中有location项,用于配置root目录下级的url。

4. Web Cache

   (1)首先是有关缓存配置的几个设置:

  

1. proxy_cache_path path [levels numbers] keys_zone=zone_name:zone_size[inactive=time] [max_size=size]

  缓存文件存放路径。levels number为存放目录结构。keys_zone为缓存池名称及大小。inactive为缓存区文件保存时常。max_size为不活动的缓存大小。

2. proxy_cache cache_name

  缓存区名称

3. proxy_cache_valid reply_code [reply code…|any] time;

  配置应答代码

  (2)页面缓存配置

  1. 创建缓存页面

mkdir –pv /nginx/cache/webpages

  2. 配置Nginx.conf

 配置后重启测试结果

proxy_cache_path /nginx/cache/webpages levels=1:2 keys_zone=webpages:30mmax_size=2g;

 server {
        listen       80;
        server_name  localhost;
        charset utf-8;
 
        location / {
            proxy_pass http://webservers;
            proxy_set_header X-Real-IP$remote_addr;
            proxy_cache webpages;
            proxy_cache_valid 20010m;
        }
    }

  

  若配置图片,需要指定文件格式

  

proxy_cache_path /var/cache/nginx/cache levels=1:2 keys_zone=imgcache:100m inactive=1d max_size=10g;


location ~* ^.+\.(js|ico|gif|jpg|jpeg|png|html|htm)$ {
        log_not_found off;
        access_log off;
        expires 7d;
        proxy_pass http://webserver ;
        proxy_cache imgcache;
        proxy_cache_valid 200 302 1d;
        proxy_cache_valid 404 10m;
        proxy_cache_valid any 1h;
        proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
        }

 

 

  3. 测试

  缓存文件是url的Hash格式,

  检测是否调用缓存文件时,

  upstream_cache_status会记录缓存状态,MISS, HINT, EXPIRED, STALE等

  需配置ngnix.conf

  

proxy_cache_path /nginx/cache/webpages levels=1:2 keys_zone=webpages:30mmax_size=2g;
    server {
        listen       80;
        server_name  localhost;
        charset utf-8;
        #add headers
        add_header X-Via$server_addr;
        add_header X-Cache$upstream_cache_status;
        location / {
            proxy_passhttp://webservers;
            proxy_set_headerX-Real-IP $remote_addr;
            proxy_cache webpages;
            proxy_cache_valid 20010m;
        }
    }

 

转载于:https://www.cnblogs.com/GW977/p/9311492.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值