Nginx、HAProxy、LVS三者的优缺点

一、Nginx优点:

1、工作在网络7层之上,可针对http应用做一些分流的策略,如针对域名、目录结构,它的正规规则比HAProxy更为强大和灵活,所以,目前为止广泛流行。

2、Nginx对网络稳定性的依赖非常小,理论上能ping通就能进行负载功能。

3、Nginx安装与配置比较简单,测试也比较方便,基本能把错误日志打印出来。

4、可以承担高负载压力且稳定,硬件不差的情况下一般能支撑几万次的并发量,负载度比LVS小。

5、Nginx可以通过端口检测到服务器内部的故障,如根据服务器处理网页返回的状态码、超时等,并会把返回错误的请求重新提交到另一个节点。

6、不[……]

查看更多……

Nginx Access Log日志统计分析常用命令

IP相关统计

统计IP访问量

查看某一时间段的IP访问量(4-5点)

查看访问最频繁的前100个IP

查看访问100次以上的IP

查询某个IP的详细访问情况,按访问频率排序

页面访问统计

查看访问最频的页面(TOP100)

查看访问最频的页面([排除php页面】(TOP100)

查看页面访问次数超过100次的页面

查看最近1000条记录,访问量最高的页面

每秒请求量统计

统计每秒的请求数,top100的时间点(精确到秒)

每分钟请求量统计

统计每分钟的请求数,top100[……]

查看更多……

Nginx 匹配路径配置规则

一、location语法
location [=|~|~|^~] /uri/ { … }
=         严格匹配。如果请求匹配这个location,那么将停止搜索并立即处理此请求
~         区分大小写匹配(可用正则表达式)
~
      不区分大小写匹配(可用正则表达式)
!~       区分大小写不匹配
!~*     不区分大小写不匹配
^~      如果把这个前缀用于一个常规字符[……]

查看更多……

GO设置代理

在 Linux 或 macOS 上面,需要运行下面命令:

Bash (Linux or macOS)

或者,可以把上面的命令写到.bashrc.bash_profile文件当中。

在 Windows 上,需要运行下面命令:

PowerShell (Windows)

现在,当你构建或运行你的应用时,Go 将会通过 goproxy.io 获取依赖。更多信息请查看 goproxy 仓库。

如果你使用的 Go 版本>=1.13, 你可以通过设置 GOPRIVATE 环境变量来控制哪些私有仓库和依赖(公司内部仓库)不通过 proxy[……]

查看更多……

Nginx与安全有关的几个配置

安全无小事,安全防范从nginx配置做起

上一篇文章《Nginx的几个常用配置和技巧》收到了不错的反馈,这里再总结下nginx配置中与安全有关的一些配置

隐藏版本号

经常会有针对某个版本的nginx安全漏洞出现,隐藏nginx版本号就成了主要的安全优化手段之一,当然最重要的是及时升级修复漏洞

开启HTTPS

ssl on: 开启https

ssl_certificate: 配置nginx ssl证书的路径

ssl_certificate_key: 配置nginx ssl证书key的路径

ssl_protoco[……]

查看更多……

使用acme.sh脚本申请Let’s Encrypt 泛域名SSL证书

安装acme.sh

以下命令请在Linux系统执行,root和普通用户均可安装:

 #安装

curl  https://get.acme.sh | sh

#让alias生效

source ~/.bashrc 

设置DNS API

目前泛域名证书仅支持DNS验证,acme.sh通过DNS提供商的API自动完成操作,因此需要先设置DNS API,以CloudXNS为例。

在CloudXNS后台 – 用户中心 – API管理可以看到API KEY/SECRET KEY,如果没有请自行创建并记录下来。

输入下面的命令导入密钥(CloudXNS),注意不同的[……]

查看更多……