我是靠谱客的博主 优秀砖头,最近开发中收集的这篇文章主要介绍nginx配置详解--动静分离,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

http.server.localtion语法

基本语法: location [=|~|~*|^~]/uri/{...}
= 严格匹配, 如果这个查询匹配,将停止搜索并立即处理此请求
~ 区分大小写匹配(可用正则表达式)
~* 不区分大小写匹配(可用正则表达式)
!~ 区分大小写匹配
!~* 不区分大小写匹配
^~ 如果把这个前缀用于一个常规字符串,那么告诉nginx如果路径匹配那么不测试正则表达式

location = /{
#只匹配/查询
}

location /{
#匹配任何查询,因为所有请求都以/开头。但是正则表达式和长的块规则将被优先查询匹配
}

location ^~ /images/{
#匹配任何以/images/开头的查询并停止搜索。任何正则表达式将不会被测试。
}

location ~*.(gif|jpg|jpeg)${
#匹配任何以gif|jpg|jpeg结尾的请求
}

location ~*.(gif|jpg|swf)${
    valid_referers none blocked start.igrow.cn sta.igrow.cn;
    if($invalid_referer){
        #防盗链
        rewrite ^/ http://$host/logo.png;
    }
}

案例:分离动态页面和静态页面

主机s100上配置一个Nginx

upstream statics{
    server s101:80 weight=1; #访问配置了静态页面的nginx
    server s102:80 weight=1; #访问配置了静态页面的nginx
    server s103:80 weight=1; #访问配置了静态页面的nginx
} 
upstream tomcats{
    server s101:8080 weight=1;  #访问tomcat
    server s102:8080 weight=1;  #访问tomcat
    server s103:8080 weight=1;  #访问tomcat
}

server{
    listen 80;
    server_name s100;
    access_log off;

    location ~* .(png|html|js|css)$ {
        proxy_pass http://statics;
        #所有以.png .html .js .css结尾的url进入此路径
    }
    location / {
        proxy_pass http://tomcats;
        #其它url进入此路径
    }
}

主机s100,s101, s102上分别配置nginx 和 tomcat(略)

server{
    listen 80;
    server_name s101;
    location / {
        root html; #存放了静态页面的根目录
        index index.html index.htm; #主页
    }
}

最后

以上就是优秀砖头为你收集整理的nginx配置详解--动静分离的全部内容,希望文章能够帮你解决nginx配置详解--动静分离所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部