nginx 配置使用

   nginx来源:

    是一款由俄罗斯程序员Igor Sysoev所开发轻量级的网页服务器、反向代理服务器以及电子邮件(IMAP/POP3)代理服务器。起初是供俄国大型的门户网站及搜索引擎Rambler(俄语:Рамблер)使用。
此软件BSD-like协议下发行,可以在UNIX、GNU/Linux、BSD、Mac OS X、Solaris,以及Microsoft Windows等操作系统中运行。
nginx 主要功能:
1.处理静态资源
2.反向代理
3.负载均衡
4.访问控制
(一)处理静态资源
假如现在我有一台云服务器,我想在云服务器上挂在一个页面
如下简易页面 index.html
<html>
  <head>
    <title>我的服务页面</title>
  </head>
  <body>
    <div>.....</div>
  </body>
</html>
 
 
通常两种方法
方法一 在自己的服务器安装个tomcat把页面配置到容器的服务里。即可访问。
具体操作 vi serser.xml
在Engine 节点下添加
<Host name="www.sam.com">
     <Valve className="org.apache.catalina.valves.AccessLogValve" 
            directory="logs" 
            prefix="www.sam.com_access_log." 
            suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
       <Context path="" docBase="/home/自己的需要配置的页面" /> 
   </Host>
这是一种方式,当然还有其他的配置方式。可以参考别人
方法二 使用nginx
http {
  include          mime.types;
  default_type     application/octet_stream;
  sendfile         on;
  server {
    listen         80;
    server_name    localhost;
    location /page {
      root /html/login
    }
    location /page {
      alias /html/desplay/
    }
  }
}
  • alias 后面必须要用 “/” 结束,否则会找不到文件,而 root 则对 ”/” 可有可无。
  • alias 只能作用在location中,而root可以存在server、http和location中。

(二)反向代理

  什么是反向代理?

正向代理: 代理端是客户端
反向代理: 代理端是服务端
正向代理影藏的是客户端,反向代理影藏的是服务端。

额外话题 "越域" 与 "跨域"
产生越域的条件:
   1. 请求协议不同  http -> https  或者 https -> http
   2. 域名不同
   3. 不同的端口
反向代理可以很简单的觉得因为端口导致的越域问题。具体使用如下:
 server {
        listen  80;
        location /api {
            proxy_pass  http://localhost:8808;
        }
    }
此外因为协议的不同导致的越域问题 本人也不知道怎么解决,至于第二个 域名的不用 这种情况的跨域 需要在请的请求前 加个添加个head 请求头,具体如何操作看我以后的博客谢谢。
(三)负载均衡
当一个网站的访问量足够大的时候,需要增加服务的访问性能,升级服务器性能和增加内存的方式,当用户足够多的时候需要增加主机了。
负载均衡就是 多态服务器组成一个组,完成相同的功能的服务,当用户访问时可以根据每台服务的状态完成不同的用户请求。
假设 现在我有四台主机 112.12.123.1 , 112.12.123.2 , 112.12.123.3 。 112.12.123.4 实现如下:
upstream myservers {
      server 112.12.123.1:8080 weight = 2;
      server 112.12.123.2:8080 weight = 3;
      server 112.12.123.3:8080 down;
      server 112.12.123.4:8080 backup;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        server {
            listen  80;
            location / {
                root   /data/page;
            }
            lcoation /css {
                alias /data/css/;
            }
            location /api {
                proxy_pass http://myservers;
            }
        }
    }
upstream内置了三种负载均衡策略,分别是:
  1. round-robin,轮循(默认)

    Nginx根据请求次数,将每个请求均匀分配到每台服务器

  2. least-connected,最少连接

    将请求分配给连接数最少的服务器。Nginx会统计哪些服务器的连接数最少。

  3. ip-hash

    绑定处理请求的服务器。第一次请求时,根据该客户端的IP算出一个HASH值,将请求分配到集群中的某一台服务器上。后面该客户端的所有请求,都将通过HASH算法,找到之前处理这台客户端请求的服务器,然后将请求交给它来处理。  在这里,我们没有指定负载均衡策略,那么它就是默认的round-robin。

     weight?

          通过指定每台服务器的权重,我们可以进一步影响nginx的负载均衡算法 在上面的示例中,如果未配置服务器权重,这意味着所有指定的服务器都被视为具有同等资格的特定      负载平衡方法。 注意,weight只能用在round-robin策略中

  其余的一些配置

backup
    将服务器标记为备份服务器。它将在主服务器不可用时处理请求。
down
    将服务器标记为永久不可用。

(四)访问控制

  访问控制说白了就是和白名单,黑名单差不多。这里空的是ip地址。

具体配置如下:

    location / {
        allow 121.237.63.233;
        allow 121.237.63.220;
        deny all;
    }

  allow和deny这两个指令的意思是指,允许ip和限制ip ,all 表示所有。

nginx  常用命令

找到自己安装目录  nginx/sbin 路径下来

启动  ./nginx

停止 ./nginx -s stop

重启 ./nginx -s reload














转载于:https://www.cnblogs.com/pcaddos/p/8761631.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值