
nginx
黄宝康
这个作者很懒,什么都没留下…
展开
-
nginx报Too many open files错误
Nginx提示:Too many open files这种错误问题的原因是因为linux文件系统最大可打开文件数为1024,而你的nginx中的error.log出现大量的Too many open files,说明文件句柄不够用了所以就错误提示出来了。如果nginx的error.log出现大量的Too many open files,说明文件句柄不够用了,这时候我们需要加大系统的文件句柄数和nginx的允许最大的连接数。默认情况下linux文 件系统最大可打开文件数为1024,对于一个应用于生产环境下原创 2021-03-26 16:32:50 · 788 阅读 · 0 评论 -
nginx健康检查实验
一、实验目的在nginx负载均衡中,我们使用upstream指令来实现,但是默认upstream中的server宕机的话,其实还是会把请求转给宕机的服务器,即不会及时剔除宕机的服务器。换一种描述如果后端节点服务器宕掉的话,nginx默认是不能把这台realserver踢出upstream负载集群的,所以还会有请求转发到后端的这台realserver上面,这样势必造成网站访问故障。二、验证默认机制我们来验证上述情况的存在。在虚拟机上安装一个nginx(安装步骤略),安装两个apache。快速的话原创 2020-11-02 11:04:53 · 558 阅读 · 0 评论 -
给已安装的nginx添加模块
查看当前nginx的编译参数--with-pcre=/usr/local/pcre --with-zlib=/usr/local/zlib --with-openssl=/usr/local/openssl所以我们的思路是,在原来的参数基础上,增加新的模块参数即可。下面的例子我们让nginx增加健康检查模块。先下载好nginx的健康检查模块,编译nginx的时候增加add-module参数指定健康检查目录[root@k8s-master nginx-1.19.1]# /usr/local/ng原创 2020-11-02 10:48:47 · 776 阅读 · 0 评论 -
搭建nginx高可用集群
一、背景我们都知道nginx有负载均衡的功能,我们在学习的时候,练手的话,一般请求交给一个nginx,然后使用nginx自带的upstream指令把请求转发到其他web容器(tomcat),实现负载均衡。然而这种架构如果用在线上环境,一旦nginx宕机,则请求都到达不了web容器。在此,我们需要构建一个高可用的nginx集群二、高可用原理Keepalived高可用故障切换转移原理Keepalived高可用服务对之间的故障切换转移,是通过VRRP来实现的。在keepalived服务工作时,主Mast原创 2020-09-29 10:46:11 · 2110 阅读 · 0 评论 -
手动安装nginx
CentOS 不能使用yum命令安装Nginx -手动安装pcre、zlib、openssl之所以手动安装是因为阿里云无法使用yum安装,Nginx安装需要-手动安装pcre、zlib、openssl。1、安装pcrewget https://nchc.dl.sourceforge.net/project/pcre/pcre2/10.35/pcre2-10.35.tar.gztar -zxvf pcre2-10.35.tar.gzmv pcre2-10.35 /usr/local/pcre原创 2020-08-03 16:46:43 · 523 阅读 · 2 评论 -
nginx报错解决connect() to unix:/tmp/php-cgi-73.sock failed (111: Connection refused
2020/06/09 08:50:16 [error] 6608#0: *1 connect() tounix:/tmp/php-cgi-73.sock failed (111: Connection refused) whileconnecting to upstream, client: 192.168.8.133, server: 192.168.8.145,request: “GET / HTTP/1.1”, upstream:“fastcgi://unix:/tmp/php-cgi-73.原创 2020-06-09 09:12:48 · 7772 阅读 · 2 评论 -
从nginx日志中统计IP访问人数
awk '{print $1}' /wlkj/logs/nginx/music.v14.3dns.com.cn-access.log | sort | uniq -c | wc -l原创 2020-05-26 15:58:59 · 444 阅读 · 0 评论 -
Nginx服务器js加载不全,报206 (Partial Content)错误
问题场景tornado服务器,配置SLB+Nginx通过80端口访问tornado服务器的时候发现前端很多比较大的js加载不完,出现报206 (Partial Content)错误(部分内容)服务器成功处理了部分 GET 请求。直接访问相关js也发现内容确实只加载了一部分呢,点击浏览器刷新,发现js内容会增多。当刷新多次之后发现js才能全部加载出来,页面能正常显示出来,但是清空缓存后,还是206错误,又要刷新很多次资源才加载完。问题原因Nginx代理之后会有相应的代理缓存区,缓存区默认只有几十K,某转载 2020-05-25 16:47:49 · 2771 阅读 · 0 评论 -
nginx中proxy_pass有无斜杆的区别
访问地址:host/test_app/a.htmllocation /test_app {proxy_pass host:8080/; #有斜杠,代理到:host:8080/a.html}location /test_app {proxy_pass host:8080;#无斜杠,代理到:host:8080/test_app/a.html}访问地址:host/test/a.htmll...原创 2020-04-15 15:31:09 · 365 阅读 · 0 评论 -
OpenResty服务器入门
OpenResty简介OpenResty(又称:ngx_openresty) 是一个基于 NGINX 的可伸缩的 Web 平台,由中国人章亦春发起,提供了很多高质量的第三方模块。OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 1...原创 2020-03-10 17:41:29 · 1278 阅读 · 0 评论 -
nginx日志统计
对日志的统计1).根据访问IP统计UVawk '{print $1}' access.log|sort | uniq -c |wc -l2).统计访问URL统计PVawk '{print $7}' access.log|wc -l3).查询访问最频繁的URLawk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|mo...原创 2019-12-24 08:53:13 · 280 阅读 · 0 评论 -
让nginx支持ipv6
先用nginx/sbin/nginx -V 查看已安装的模块,具体前面路径,根据你安装的位置。如果有–with-ipv6,则表示已安装此模块,否则需要重新编译安装./configure --prefix=/mnt/nginx --with-http_ssl_module --with-pcre --with-ipv6配置:1.同时监听IPV4和IPV6server {....lis...转载 2019-07-04 09:40:34 · 5829 阅读 · 0 评论 -
nginx设置开启启动
1、vi /etc/init.d/nginx输入如下内容#!/bin/bash# nginx Startup script for the Nginx HTTP Server# it is v.0.0.2 version.# chkconfig: - 85 15# description: Nginx is a high-performance web and proxy server...转载 2019-06-02 17:09:26 · 613 阅读 · 0 评论 -
nginx平滑重启
关于平滑重启的意思,就是指已经连接到nginx的请求将继续使用旧的配置,待客户端服务完成后,旧的工作进程将关闭,下次请求将采用新的配置。好处:重启过程中,不会出现500相关的错误,用户体验较好。windows下启动nginxcd d:\nginxstart nginxnginx的服务管理nginx -s [stop|quit|reopen|reload]从容停止nginxkill...原创 2019-08-20 19:40:27 · 734 阅读 · 0 评论 -
nginx切割日志定时脚本
#!/bin/bash# This script run at 00:00## 零点执行该脚本## Nginx 日志文件所在的目录LOGS_PATH=/u01/apps/nginx/logsLOGS_LIST=(`ls $LOGS_PATH/*access.log`)## 获取昨天的 yyyy-MM-ddYESTERDAY=`date -d "yesterday" +%Y-%m-%d...原创 2019-05-28 15:31:11 · 369 阅读 · 0 评论 -
nginx自动列目录配置
nginx配置如下: server { listen 80; server_name aaa.hbk.com; access_log logs/aaa.access.log combined; root /root/hbk/aaa/; l...原创 2019-08-22 15:32:42 · 1996 阅读 · 0 评论 -
Nginx配置SSI
一、什么是SSISSI:Server Side Include,是一种基于服务端的网页制作技术,大多数(尤其是基于Unix平台)的web服务器如Netscape Enterprise Server等均支持SSI命令。它的工作原因是:在页面内容发送到客户端之前,使用SSI指令将文本、图片或代码信息包含到网页中。对于在多个文件中重复出现内容,使用SSI是一种简便的方法,将内容存入一个包含文件中即可...原创 2019-05-14 08:27:19 · 347 阅读 · 0 评论 -
nginx平滑升级实验
(1)升级和安装nginx第三方模块一样,需要查看原来安装nginx的版本以及编译的参数:[root@ittestserver1 opt]# /usr/local/nginx2/sbin/nginx -Vnginx version: nginx/1.10.3built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) built with Ope...转载 2019-08-21 14:41:51 · 320 阅读 · 0 评论 -
nginx配置基于IP的虚拟主机
Nginx支持多种类型的虚拟主机:基于IP的虚拟主机,基于域名的虚拟主机,基于端口的虚拟主机增加两个IP别名ifconfig ens33:1 192.168.86.135 broadcast 192.168.86.255 netmask 255.255.255.0 uproute add -host 192.168.86.135 dev ens33:1ifconfig ens33:2 19...原创 2019-08-22 09:17:45 · 1508 阅读 · 0 评论 -
nginx配置基于域名的虚拟主机
只需配置DNS服务器,将每个主机名映射到正确的IP地址,然后配置nginx服务器,令其识别不同的主机名即可。这种虚拟主机技术,使很多虚拟主机可以共享同一个IP地址,有效解决了IP地址不足的问题。nginx配置如下: # 第一个虚拟主机 server { listen 80; server_name aaa.hb...原创 2019-08-22 09:55:34 · 461 阅读 · 0 评论 -
nginx日志配置
日志级别: debug > info > notice > warn > error > crit > alert > emerg默认nginx定义了log_format名称为combined我们也可以自定义日志格式log_format compression '$remote_addr - $remote_user [$time_local] '...原创 2019-08-22 12:02:52 · 788 阅读 · 0 评论 -
nginx日志数据统计
统计status出现的次数awk '{print $9}' access.log | sort | uniq -c | sort -rn显示返回404状态码的URLawk '($9 ~ /404/)' access.log | awk '{print $7}' | sort | uniq -c | sort -rn原创 2019-08-22 13:50:19 · 489 阅读 · 0 评论 -
nginx开启浏览器本地缓存
浏览器缓存是为了加速浏览,浏览器在用户磁盘上对最近请求过的文档进行存储,当访问者再次请求这个页面时,浏览器就可以从本地磁盘显示文档,加速页面的阅读。缓存同时节约了网络资源,提高了网络的效率。nginx配置如下:server { listen 80; server_name aaa.hbk.com; ...原创 2019-08-22 16:00:07 · 1420 阅读 · 0 评论 -
开启Nginx限流
开启Nginx的限流功能,如下所示:http{ #定义每个IP的session空间大小 limit_zone one $binary_remote_addr 20m; #与limit_zone类似,定义每个IP每秒允许发起的请求数 limit_req_zone $binary_remote_addr zone=req_one:20m rate=10r/s;...原创 2018-02-28 15:06:38 · 912 阅读 · 0 评论 -
升级nginx,编译make的时候报undefined reference to `SSL_CTX_set_alpn_select_cb'
编译安装nginx的时候./configure --with-http_ssl_module报了如下错误objs/src/event/ngx_event_openssl.o: In function `ngx_ssl_get_ciphers':/root/nginx-1.12.0/src/event/ngx_event_openssl.c:3358: undefined referen...原创 2019-05-05 15:59:56 · 11030 阅读 · 0 评论 -
Nginx配置SSL证书时——nginx:[emerg]unknown directive ssl错误
一、引言当我们的Linux服务器上当中发布了web项目,有时候需要配置一个SSL证书,这样表示你这个网站还比较正式哈哈哈。当我把证书下载好,把nginx.conf配置好,简直就是万事俱备,只欠重启。结果一重启,duang~出错了。nginx:[emerg]unknown directive ssl就是这个错误提示因为我们配置这个SSL证书需要引用到nginx的中SSL这模块,然而我们一开...转载 2019-05-05 15:05:31 · 1697 阅读 · 0 评论 -
nginx 403 Forbidden错误的原因和解决方法
问题总是等着自己去解决,刚弄了下nginx开机自启动和开机禁用防火墙,可是在浏览器访问却报了403 Forbidden错误。查看错误日志,发现是权限不足导致的。[root@localhost logs]# cat error.log 2018/04/13 08:54:50 [emerg] 1179#0: bind() to 0.0.0.0:80 failed (98: Address a...原创 2018-04-13 10:30:59 · 7736 阅读 · 0 评论 -
Linux下安装nginx
nginx依赖gcc,pcre等库。安装nginx之前需要在linux下加入nginx所依赖的库。一、环境准备执行:[root@localhost hbk]# yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel稍等片刻,见下面等完毕,说明准备好了依赖库。二、下载安装包准备好ng...原创 2018-04-12 18:20:14 · 7907 阅读 · 2 评论 -
Nginx配置参数worker_connections
这个属性是指单个经常可以运行同时建立外部连接的数量,无论这个连接是Nginx外部建立的,还是Nginx内部建立的。这里需要注意的是,一个工作进程建立一个连接后,进程将打开一个文件副本,所以这个数量还与操作系统设定的进程最大可打开的文件副本有关。更改操作系统“进程最大可打开的文件数”的设置首先需要以拥有root用户权限,修改/etc/security/limits.conf文件。&g...原创 2018-04-12 17:19:28 · 4085 阅读 · 0 评论 -
Nginx动态缩略图模块及校验
Nginx的动态缩略图是一个非常不错的图片不同客户端展现的方案。根据根据原图产生不同大小的缩略图,并根据一定的正则访问规则进行访问。添加Nginx动态缩略图的支持[root@localhost nginx2]# yum install gd-devel[root@localhost nginx-1.13.1]# ./configure --prefix=/root/hbk...原创 2018-04-16 19:53:00 · 672 阅读 · 0 评论 -
CORS on Nginx
The following Nginx configuration enables CORS, with support for preflight requests.## Wide-open CORS config for nginx#location / { if ($request_method = 'OPTIONS') { add_header 'A...原创 2018-04-10 13:40:31 · 720 阅读 · 0 评论 -
nginx日志切割shell
#!/bin/bashLOGPATH=/usr/local/nginx/logs/z.com.access.logBASEPATH=/data/$(date -d yesterday +%Y%m)mkdir -p $BASEPATHbak=$BASEPATH/$(date -d yesterday +%d%H%M).zcom.access.logmv $LOGPATH $bakto原创 2018-01-29 16:29:40 · 498 阅读 · 0 评论 -
wget 无效命令
安装好后的CentOS 7想安装个nginx学习下,发现不识别wget命令wget http://nginx.org/download/nginx-1.12.2.tar.gz原因是安装CentOS系统的时候安装的最小配置,默认没有安装wget, 只需要yum -y install wget即可。原创 2018-01-29 14:26:01 · 7542 阅读 · 3 评论 -
git和nginx安装依赖
git安装依赖 sudo yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils- MakeMaker nginx安装依赖命令 yum -y install gcc zlib zlib-devel原创 2018-01-25 16:57:34 · 701 阅读 · 0 评论 -
Nginx https支持配置
server { listen 443; server_name XX.XXzhihui.com; ssl on; ssl_certificate 1_XX.XXzhihui.com_bundle.crt; ssl_certificate_key 2_XX.XXzhihui.com.key; ssl_se原创 2017-09-25 11:20:18 · 921 阅读 · 0 评论 -
nginx 负载均衡的配置笔记
nginx负载均衡的工作原理是反向代理。使用upstream 模块配置,可以在nginx服务器监听的目标端口中,采用服务器响应集群当中服务器压力最小的一台来响应请求。相关配置如下:user nobody;worker_processes 4;events{worker_connections 1024;}http{upstream mypro{server原创 2017-06-26 17:59:33 · 462 阅读 · 0 评论 -
更改nginx软件“进程最大可打开文件数”的设置
https://blog.csdn.net/huangbaokang/article/details/79917023 这篇博客只是操作系统级别的“进程最大可打开文件”的限制。在nginx.conf文件中加入worker_rlimit_nofile配置未加这个配置的时候,启动好了nginx服务,我们可以查看到当前nginx进程最大可打开的文件数。如下:[root@localhost...原创 2018-04-13 15:56:59 · 1639 阅读 · 0 评论 -
Nginx gzip的配置和校验
开启nginx gzip压缩后,网页、css、js等静态资源的大小会大大的减少,从而可以节约大量的带宽,提高传输效率,给用户快的体验。虽然会消耗cpu资源,但是为了给用户更好的体验是值得的。未加入gzip时的响应头信息比如访问首页,在浏览器中查看响应头信息: 加入gzip配置在nginx.conf文件的http模块中加入gzip的配置[root@localhost...原创 2018-04-13 16:53:18 · 15250 阅读 · 4 评论 -
点击劫持漏洞:使用X-Frame-Options 解决方法(应用tomcat)
发现项目中存在 X-Frame-Options 低危漏洞:使用 X-Frame-OptionsX-Frame-Options 有三个值:DENY:表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。SAMEORIGIN:表示该页面可以在相同域名页面的 frame 中展示。ALLOW-FROM uri:表示该页面可以在指定来源的 frame 中展示。换一句话说,...转载 2019-02-14 14:36:27 · 3234 阅读 · 0 评论 -
详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程
一、隐藏服务器缺省banner的目的通过隐藏服务器缺省banner,可以避免黑客获取真实的服务器类型和版本信息,间接地增加攻击难度。二、查看服务器的缺省banner(标记)的命令1、Linux: curl -I 服务器ip:port , 就是获取http响应头 。通过命令返回的信息,我们可以看到这是Tomcat的缺省banner:Apache-Coyote/1.1。2...转载 2019-03-06 14:42:35 · 7996 阅读 · 0 评论