• nginx


     一般来说可以用来做:静态页面的服务器、静态文件缓存服务器、网站反向代理、负载均衡服务器等等,而且实现这一切,基本只需要改改那万能的配置文件即可

    一.静态页面服务器

    nginx.conf 的配置(其实默认的也是如此,所以作为静态服务器只需要将静态文件移动到nginx下的html文件夹里就可以了)

    server {
          listen       8094; #监听端口
          server_name  localhost; # 当前服务的域名
    
          #charset koi8-r;
    
          #access_log  logs/host.access.log  main;
    
         location / {  #所有以/开头的地址,实际上是所有请求
              root   html;#文件根目录
              index  index.html index.htm;#默认起始页
          }
    
    }

    其中server代表启动的一个服务,location 是一个定位规则。

    二.反向代理服务器-跨域

      假设有两个网站,A网站部署在:http://localhost:81 即本地ip端口81上;B网站部署在:http://localhost:82 即本地ip端口82上,之间访问就会造成浏览器跨域

      跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,或是a页面为ip地址,b页面为域名地址,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。

      注意:跨域限制访问,其实是浏览器的限制。

      nginx.conf配置

    server {
            listen       80; #监听80端口,可以改成其他端口
            server_name  localhost; # 当前服务的域名
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                proxy_pass http://localhost:81;
                proxy_redirect default;
            }
    
            location /apis { #添加访问目录为/apis的代理配置
                rewrite  ^/apis/(.*)$ /$1 break;
                proxy_pass   http://localhost:82;#既是把请求代理到其他主机
           }
    #以下配置省略

      配置解释:

      1.由配置信息可知,我们让nginx监听localhost的80端口,网站A与网站B的访问都是经过localhost的80端口进行访问。

      2.我们特殊配置了一个“/apis”目录的访问,并且对url执行了重写,最后使以“/apis”开头的地址都转到“http://localhost:82”进行处理。

      3.rewrite  ^/apis/(.*)$ /$1 break; 

      代表重写拦截进来的请求,并且只能对域名后边以“/apis”开头的起作用,例如www.a.com/apis/msg?x=1重写。只对/apis重写。

      rewrite后面的参数是一个简单的正则 ^/apis/(.*)$ ,$1代表正则中的第一个(),$2代表第二个()的值,以此类推。

      break代表匹配一个之后停止匹配。

    注:rewrite  ^/apis/(.*)$ /$1 break; 解释

      rewrite 后面紧跟的是一个正则表达式 ^....$,
      ^ : 匹配字符串的开始
      $ : 匹配字符串的结束
      (.*) .代表任何字符 *代表所有的,也就是说(.*)选取了/apis/之后的所有字符并存入变量$1.
      /$1 是重写后的表达式
      既由/apis/xxxx.html 变成了 /xxxx.html

     cors跨域链接:https://www.cnblogs.com/SummerinShire/p/7219789.html

  • 相关阅读:
    H5基础
    函数
    分支结构/循环结构
    图解 idea打jar包的步骤
    jmeter查看使用文档后总结
    Ride的使用
    Robot Framework
    jmeter+ant+jenkins
    ant
    Mysql选择合适的数据类型
  • 原文地址:https://www.cnblogs.com/rookie-newbie/p/8080773.html
Copyright © 2020-2023  润新知