202010-10 Nginx已编译的nginx-添加新模块 1.查看已有模块/usr/local/nginx/sbin/nginx-V此处我是安装了配置SSL想在此加上FastDFS模块将红色的地方复制出来记到一个小本本上./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module--add-module=/usr/local/fastdfs-nginx-module/src/2.重新编译Nginx在此位置重新执行上面的:./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module--ad... 继续阅读 >
202010-10 使用nginx方式实现http转换为https的示例代码 最近在写一个小程序,因为小程序官网上必须要使用https,之前网站都是使用的http,而且使用的阿里云服务,于是就在阿里云上购买的ssl服务,以下是配置过程。 1.首先是去阿里云上购买ssl,当然有免费版,但是只能支持一个域名,而且同一个域名只能购买20个证书,各个明细子域名都算一个域名 2.购买ssl证书之后去证书控制台,这个时候需要补全资料,补全之后等待审核,一般只需几分钟就能... 继续阅读 >
202010-10 Docker构建python Flask+ nginx+uwsgi容器 安装Nginx首先拉下centos镜像dockerpullcentos我们安装最新的nginx1.19版本:下载地址将centos镜像运行起来并进入:dockerrun--namever-d-p8051:80-itnginx_start将nginx-1.19.0.tar.gz这个包放入容器里面:dockercpnginx-1.19.0.tar.gz10e87af84c05:/root(10e87af84c05为centos容器id)安装nginx前先装一些依赖:yum-yinstallgccgcc-c++autoconfautomakemakeyum-yinstallzlibzlib-developensslopenssl-... 继续阅读 >
202010-10 Docker 如何安装 Nginx Docker安装NginxNginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。1、查看可用的Nginx版本访问Nginx镜像库地址:https://hub.docker.com/_/nginx?tab=tags。可以通过Sortby查看其他版本的Nginx,默认是最新版本nginx:latest。你也可以在下拉列表中找到其他你想要的版本:此外,我们还可以用dockersearchnginx命令来查看可用版本:$dockersearchnginxNAMED... 继续阅读 >
202010-09 Nginx URL重写rewrite机制原理及使用实例 URL重写有利于网站首选域的确定,对于同一资源页面多条路径的301重定向有助于URL权重的集中NginxURL重写(rewrite)介绍和apache等web服务软件一样,rewrite的组要功能是实现RUL地址的重定向。Nginx的rewrite功能需要PCRE软件的支持,即通过perl兼容正则表达式语句进行规则匹配的。默认参数编译nginx就会支持rewrite的模块,但是也必须要PCRE的支持rewrite是实现URL重写的关键指令,根据regex(正则表达式)部分内容,重定向到rep... 继续阅读 >
202010-09 Nginx动静分离实现案例代码解析 动静分离通过中间件将动态请求和静态请求进行分离,减少不必要的请求消耗。优势:动静服务互不影响,如动态服务停止,静态资源还可以正常访问。实例模拟环境:lb01、web01(模拟静态服务器)、web02(模拟动态服务器)1.在web01上创建目录/pm_code/images/,并上传一张图片配置nginx文件/etc/nginx/conf.d/static.conf:2.在web02上安装tomcatyum-yinstalltomcatsystemctlstarttomcattomcat默认端口8080,确认正常开启:mkdir... 继续阅读 >
202010-09 Nginx Rewrite使用场景及代码案例详解 NginxRewrite使用场景1.URL地址跳转,例如用户访问pm.com将其跳转到baidu.com或者当用户通过http的方式访问时,将其跳转至https的方式访问。2.URL伪静态,将动态页面显示为静态页面方式的一种技术,减少动态URL地址对外暴露过多的参数,提升更高的安全性。3.搜索引擎SEO优化依赖于URL路径,以便支持搜索引擎录入4.可以调整用户浏览的URL,看起来更规范,合乎开发及产品人员的需求。配置语法rewriteregexreplacement[flag];4种flaglast... 继续阅读 >
202010-09 FastDFS及Nginx整合实现代码解析 FastDFS&Nginx整合:跟踪器结合Nginx,目的是为了负载均衡和高可用,只有一台Track可以不配置Nginx安装FastDFS-Nginx-Module到服务器上面:tar-zxvffastdfs-nginx-module-1.20.tar.gz进入目录,且进入目录的SRC目录:cdfastdfs-nginx-module-1.20/src修改config文件,所有的/usr/local更换/usr/vimconfig建议再补加fdfs标明这是fastdfs的/usr/include/fdfs/usr/include/fdfscommon拷贝配置文件到之前的目录中cpmod_fastdfs... 继续阅读 >
202010-09 Nginx配置同一个域名同时支持http与https两种方式访问实现 Nginx配置同一个域名http与https两种方式都可访问,证书是阿里云上免费申请的server{listen80;listen443ssl;sslon;server_name域名;indexindex.htmlindex.htmindex.phpdefault.htmldefault.htmdefault.php;ssl_certificate/usr/local/nginx/cert/21402058063066221.pem;//下载申请后阿里ssh提供的pemssl_certificate_key/usr/local/nginx/cert/21402058063066221.key;//下载申请后阿里ssh提供的keyssl_session_timeou... 继续阅读 >
202010-09 Nginx同时支持Http和Https的配置详解 现在的网站支持Https几乎是标配功能,Nginx能很好的支持Https功能。下面列举一个配置同时支持Http和Https的功能。需要注意的是:既然选择使用Https,就是为了保证通信安全,那么就没必要再用Http进行通信了。在URL中还支持Http的方式,主要是为了用户不知道网站支持Https,还是使用Http的方式进行访问。这时Nginx后台需要自动将Http请求转成Https的方式,这样就又能支持Http,又能保证通信安全了。废话不多说,下面直接贴一个Nginx... 继续阅读 >
202010-09 详解nginx 的 default_server 定义及匹配规则 nginx的default_server指令可以定义默认的server去处理一些没有匹配到server_name的请求,如果没有显式定义,则会选取第一个定义的server作为default_server。在了解到如上规则后,我们可以捕获未做绑定的域名访问或直接IP访问,做重定向到403页面等处理。1、nginx隐式的defaultserverhttp{#如果没有显式声明defaultserver则第一个server会被隐式的设为defaultserverserver{listen80;server_n... 继续阅读 >
202010-09 nginx 流量控制以及访问控制的实现 nginx流量控制流量限制(rate-limiting),是Nginx中一个非常实用,却经常被错误理解和错误配置的功能。我们可以用来限制用户在给定时间内HTTP请求的数量。请求,可以是一个简单网站首页的GET请求,也可以是登录表单的POST请求。流量限制可以用作安全目的,比如可以减慢暴力密码破解的速率。通过将传入请求的速率限制为真实用户的典型值,并标识目标URL地址(通过日志),还可以用来抵御DDOS攻击。更常见的情况,该功能被用来保... 继续阅读 >
202010-08 Vue打包部署到Nginx时,css样式不生效的解决方式 今天在将使用Vue-cli编写的前端项目部署到Nginx的时候发生了一件很困扰的问题:Vue-cli项目在本地使用npmrundev的时候,页面样式是可以正常加载出来的,但是我将Vue-cli项目通过npmrunbuild打包生成的dist目录部署到Nginx之后,通过访问是无法加载出来样式的。于是乎,在网上开始寻找资料,发现大部分前辈的解决方案都是在,config的文件夹中的index.jsassetsRoot:path.resolve(__dirname,'../dist'),assetsSubDirector... 继续阅读 >
202010-08 nginx外网访问内网站点配置操作 背景:站点是前后端分离:vue+springboot前端内网地址:192.168.1.10:81API内网地址:192.168.1.12:8080外网域名:abc.ab.com外网IP:10.114.X.X需求:通过域名可以访问站点且站点静态资源且可访问API请求数据方案一:(前提:外网域名映射服务器外网IP)1.nginx配置域名监听且访问静态资源2.重点来了!!!静态资源请求API的地址由192.168.1.12:8080修改为域名访问方式(abc.ab.com:8080)重启nginx即可其他方案等博主验证完后放上... 继续阅读 >
202010-08 Django+Uwsgi+Nginx如何实现生产环境部署 如何在生产上部署Django?Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式。uwsgi介绍uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。要注意WSGI/uwsgi/uWSGI这三个概念的区分。WSGI是一种Web服务器网关接口。它是一个Web服务器(如nginx,uWSGI等服务器)与web应用(如用Flask框架写的程序)通信的一种规范。uwsgi... 继续阅读 >
202010-08 Tomcat Nginx Redis实现session共享过程图解 一、准备工作中间件:Tomcat、Redis、Nginxjar包:commons-pool2-2.4.2.jar、jedis-2.8.0.jar、tomcat-redis-session-manager-2.0.0.jar二、配置Tomcat多台Tomacat需要配置不同的端口号/lib将jar包存放到此位置/conf/server.xml/conf/context.xmlhost为Redis的ip地址,port为端口,database为数据库。Nginx/conf/nginx.confupstream意为配置服务器列表,本例中开启了两台tomcat,端口分别为8080与9999... 继续阅读 >