• nginx基础入门


    nginx常常被用来处理静态资源如css、js、图片、html等,也被用作反向代理server、邮件server,也时常拿来做负载均衡。它的优势主要体如今对静态资源的处理上,这次抽出了点时间整理了一些这方面的知识和大家分享

    1 nginx的下载地址

    http://nginx.org/en/download.html

    建议使用稳定版而不是最新版本号

    2 nginx的基本命令

    这些命令主要用于启动、停止、重新启动nginx,例如以下所看到的:

    启动:直接进入nginx的解压文件夹输入nginx,回车就可以

    其它:nginx  -s  对应參数

    -s后面的可选參数为stop、quit、reload、reopen

    以下来看看关闭nginx服务的命令

    3  通过nginx訪问静态资源

    前面说过nginx在处理静态资源上有优势,假设有这么一种情况,须要输入http://localhost:9080/images/pubu.jpg就把图片显示出来,对于这样的情况能够进行例如以下配置

    在server节点下添加:

     location /images/ {
                root /data;
     }

    这个配置的意思是假设訪问路径和该规则匹配,那么返回/data/images以下的资源,来看下效果

    如今浏览器里输入http://localhost:9080/images/pubu.jpg,然后回车

    除了这样的方式外nginx也提供了正则匹配的方式来请求静态资源,能够像以下这样配置:

    location ~ .(gif|jpg|png)$ {
        root /data/images;
    }

    这个配置的意思是假设訪问的url请求的资源是gif、jpg、png那么返回/data/ images以下的图片文件

    要注意的是这个/指的是nginx的父文件夹,假设父文件夹下没有data/images这种路径,訪问的时候会出现404


    4 反向代理

    反向代理使用的几率还是非常大的,反向代理能够简单理解成请求的转发,来看例如以下配置

    location / {
            proxy_pass http://localhost:8080;
    }


    这个配置的意思是当直接訪问nginx的根文件夹时,请求会转发到8080这个port上,这种就是反向代理了,使用反向代理能够让nginx和其它中间件搭配使用,这种话假设请求的是静态资源那么就交给nginx处理,动态的东西则交由中间件如tomcat来处理


    5 反向代理和资源静态化的综合运用

    当项目非常大的时候静态资源的加载会比較耗时,这样的情况就能够把这些静态资源交给nginx来处理,例如以下所看到的:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <script type="text/javascript" src="../jquery-1.8.3.min.js"></script>
    <script type="text/javascript">
     $(document).ready(function(){
    	  $("#img").html("<img  src="../images/pubu.jpg"/>");
     });
    </script>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>測试</title>
    </head>
    <body>
      <div id="img" ></div>
    </body>
    </html>

    这个页面要做的事情非常easy,首先从nginx取出jquery的js,当页面加载的时候从nginx取出图片显示在页面上,这个需求的配置例如以下:

            location / {
             
               proxy_pass http://localhost;
            }
           
    	
            location /images/ {
                root /data;
            }
           
            location ~ .js$ {
                root /data/js;
            }

    这样子tomcat(我的是80port)就能够和nginx搭配使用了,效果例如以下:


    最后把data这个文件夹的截图贴出来,随便看看


    至于nginx的负载均衡本人不建议使用,眼下nginx的负载均衡不支持session复制,假设对session这一块要求不非常严格的情况下才建议使用。负载均衡用apache会更好由于它支持session复制


    nginx的说明:http://nginx.org/en/docs/beginners_guide.html

  • 相关阅读:
    MongoDB学习总结(二) —— 基本操作命令(增删改查)
    C#连接SQLite数据库方法
    第一章 算法在计算中的作用
    VS2010学习笔记
    centos+docker+jenkins
    git一些简单运用
    centos7 cannot find a valid baseurl for repo
    https://mirrors.ustc.edu.cn/dockerce/linux/centos/dockerce/repodata/repomd.xml:HTTPS Error 404 Not Found
    python路径相关处理
    python的excel处理之openpyxl
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4508651.html
Copyright © 2020-2023  润新知