草庐IT

nginx_status

全部标签

Nginx配置origin限制跨域请求(应对等保)

Nginx需要修复一个安全漏洞这个需要根据客户端传递的请求头中的Origin值,进行安全的跨站策略配置,目的是对非法的origin直接返回403错误页面,配置如下:1、在http中定义一个通过map指令,定义跨域规则并返回是否合法http{...#说明:一般使用http_origin来进行跨域控制,当不传递origin头的时候,就为这个里面的默认值,当传递有值得时候,才会走下面得正则匹配map$http_origin$allow_cors{default1;"~^https?://.*?\.theorydance\.com.*$"1;"~^(https?://(dmp.xxxxxx.cn)?)

nginx如何解决前后端跨域问题

Nginx可以通过以下两种方式来解决前后端跨域问题:添加CORS头部Nginx可以通过添加CORS头部来解决跨域问题。CORS(Cross-OriginResourceSharing)是一种机制,它允许Web应用程序从不同的域访问其资源。要在Nginx中添加CORS头部,可以在Nginx配置文件中的特定位置添加以下代码:add_header'Access-Control-Allow-Origin''*';add_header'Access-Control-Allow-Methods''GET,POST,OPTIONS';add_header'Access-Control-Allow-Heade

Docker创建Nginx容器,挂载配置conf和静态资源等目录,动态发布

为什么要把conf目录和静态资源目录配置出来(这里指开发调试阶段,生产阶段要将配置和资源COPY到Nginx容器中)在开发调试的过程中,经常需要频繁的更改配置文件和打包的前端web文件,这样的话,如果是使用Dockerfile中COPY命令上传相关文件的话,需要反复构建镜像,并重新生成容器,比较麻烦。如果能够将相关需要配置的文件和前端web文件映射到宿主机上进行配置,这样只需要重启容器就可以解决问题了。第一步需要运行一个Nginx容器,并导出下一步需要的配置文件启动一个空的Nginx容器: dockerrun-d--namenginx-demo nginx检查容器是否运行成功:dockerps

windows7-64位编译nginx指南

1.   安装VS2010,需要使用nmake编译器和VisualStudio命令提示(2010);2.   安装nasm-2.12.02rc9-installer-x64.exe,与perl和openssl依赖相关,相关下载地址:https://www.nasm.us/pub/nasm/releasebuilds/;3.   安装strawberry-perl-5.14.4.1-64bit.exe,注意版本不要太高,否则可能存在安装不成功的情况,与openssl依赖相关,相关下载地址:https://strawberryperl.com/;4.   安装mingw-get-setup.exe

解决error: link.exe‘ failed with exit status 1158

问题:我在运行一个程序时候出现了出现了bugerror:command‘\XXX\VS2015\VC\BIN\x86_amd64\link.exe‘failedwithexitstatus1158后缀为1158的错误解决方案因为之前的一些系统配置没了,重新安装例如vs,buildTools之类的东西,但是在安装过程中出现了许多问题,总是缺少东西,这里记录一下不好找的内容。程序运行时提示error:command‘\XXX\VS2015\VC\BIN\x86_amd64\link.exe‘failedwithexitstatus1158后台显示我翻阅网上的解决方案,就是vs缺少了两个文件rc.e

nginx 配置 ssl

 公有云:nginx配置SSL-公有云文档中心(qingcloud.com)自签,参考:https自签名SSL证书-aaron_agu-博客园(cnblogs.com) 自签,可以使用acme.sh: 用acme.sh帮你免费且自动更新的HTTPS证书,省时又省力-知乎(zhihu.com)第一步:Nginx的ssl模块安装在配置ssl证书之前,要确保你的nginx已经安装了ssl模块,一般情况下自己安装的nginx都是不存在ssl模块的。这里先检查下自己是否存在ssl模块:进入到你的nginx安装目录下面,我的目录是在(/usr/local/nginx),如果你的nginx安装步骤和上面的文

Nginx反向代理配置

关键字:反向代理,负载均衡第一步:官网下载windwos版本nginx下载地址链接:nginx:download 如下图所示 第二步:解压启动nginx 备注:启动前先查看进程是否占用80端口 netstatano|findstr80tasklist|findstr“进程id号”askkill/f/t/im“进程id或者进程名称” 有占用的情况下杀死进程,第三步:双击启动nginx.exe第四步:配置反向代理 D:\nginx-1.23.2\nginx-1.23.2\conf下面的nginx_configserver{listen80;#80是nginx端口server_name192.168

Nginx的优化,安全与防盗链

1.Nginx的页面优化1.1Nginx的网页压缩  在Nginx的ngx_http_gzip_module压缩模块提供对文件内容压缩的功能。进行相关的配置修改,就能实现Nginx页面的压缩,达到节约带宽,提升用户访问速度vim/usr/local/nginx/conf/nginx.confhttp{..........gzipon;gzip_min_length1k;gzip_buffers464k;gzip_http_version1.1;gzip_comp_level6;gzip_varyon;gzip_typestext/plaintext/javascriptapplication/

Docker部署Nginx,无法获取客户端真实ip地址

在部署docker版本nginx进行请求转发,意外发现nginx打印日志中的客户端ip并非为客户端的真实ip(221.237.xxx.xxx),而是docker虚拟网卡的ip(172.17.0.1)开始猜测是nginx配置问题,对比其他环境,发现配置相同,但其他环境未出现此情况通过查询资料,推测是docker网桥和linux防火墙存在冲突,但是系统的防火墙已经关闭,不知道为啥会有影响。尝试把docker网桥加入到防火墙的internal区域,测试一下效果。1.通过ifconfig-a找到docker网桥的名称2.把网桥加入到防火墙的internal(内部)区域firewalld-cmd–per

高可用:Nginx 配合 keepalived

如果在谷歌中搜索「Nginx高可用」,搜索出来的大多都是Nginx+keepalived的使用。所以,本文就介绍下怎样用Nginx和keepalived来实现应用的高可用。环境服务器:CentOS7Server1:10.211.55.3Server2:10.211.55.14Docker:23.0.5Nginx:1.23.4keepalived:1.3.5部署本次测试使用两台测试虚拟机,IP分别为10.211.55.3和10.211.55.14,Nginx使用Docker进行部署,keepalived直接在服务器部署。架构图如下:具体部署和配置步骤如下:1、在两台CentOS服务器上安装doc