我是靠谱客的博主 纯真野狼,最近开发中收集的这篇文章主要介绍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

最后

以上就是纯真野狼为你收集整理的Nginx学习笔记的全部内容,希望文章能够帮你解决Nginx学习笔记所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(31)

评论列表共有 0 条评论

立即
投稿
返回
顶部