Nginx 配置動靜分離

1,http.server.localtion語法css

基本語法: location [=|~|~|^~]/uri/{...}
= 嚴格匹配, 若是這個查詢匹配,將中止搜索並當即處理此請求
~ 區分大小寫匹配(可用正則表達式)
~
不區分大小寫匹配(可用正則表達式)
!~ 區分大小寫匹配
!~* 不區分大小寫匹配
^~ 若是把這個前綴用於一個常規字符串,那麼告訴nginx若是路徑匹配那麼不測試正則表達式html

location = /{
#只匹配/查詢
}nginx

location /{
#匹配任何查詢,由於全部請求都以/開頭。可是正則表達式和長的塊規則將被優先查詢匹配
}正則表達式

location ^~ /images/{
#匹配任何以/images/開頭的查詢並中止搜索。任何正則表達式將不會被測試。
}tomcat

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

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

2,分離動態頁面和靜態頁面案例
主機server0上配置一個Nginx
upstream statics{
server server1:80 weight=1; #訪問配置了靜態頁面的nginx
server server2:80 weight=1; #訪問配置了靜態頁面的nginx
server server3:80 weight=1; #訪問配置了靜態頁面的nginx
}
upstream tomcats{
server server1:8080 weight=1; #訪問tomcat
server server2:8080 weight=1; #訪問tomcat
server server3:8080 weight=1; #訪問tomcat
}url

server{
listen 80;
server_name server0;
access_log off;code

location ~* \.(png|html|js|css)$ {
    proxy_pass http://statics;
    #全部以.png .html .js .css結尾的url進入此路徑
}
location / {
    proxy_pass http://tomcats;
    #其它url進入此路徑
}

}
主機server0,server1, server2上分別配置nginx 和 tomcat(略)
server{
listen 80;
server_name s101;
location / {
root html; #存放了靜態頁面的根目錄
index index.html index.htm; #主頁
}
}server

相關文章
相關標籤/搜索