Nginx的SSL证书使用密码生成的命令
证书过期,公司给了一个证书压缩包,里面有cer,crt,jks,key,p12,pem,pfx,_CA.crt,_noCA.crt这些格式的文件,也不给个使用的说明文档比如openssl命令的使用,谁能记得啊,又得去网上搜索尝试。实际在压缩包里附带一个openssl命令生成的步骤说明一下就好了,不然所有拿到压缩包的人都得去网上搜索一遍,不过换个想法想想,也行吧,复习一下使用方法。如果直接在nginx的配置文件里使用:ssl_certificate ####.crt; ssl_certificate_key ####.key;会报错badpasswordread,详细报错如下:nginx...[>>…]
服务器Ubuntu18.06下安装nginx-1.23.3
因为很长时间以来,一直使用docker,所以很久没有在服务器下直接安装过nginx,但这次因为https的事情,需要直接在系统中安装nginx,找来最新版的nginx1.23.3。并且需要支持https,我这里使用的是服务器Ubuntu18.06,安装记录如下:Nginx模块依赖性在安装之前需要先装一些支持模块,先进行一些初始化模块安装如下:1.gzip模块需要zlib库.zlib库用于对HTTP包的内容做gzip格式的压缩,如果我们在nginx.conf中配置了gzipon,并指定对于某些类型(content-type)的HTTP响应使用gzip来进行压缩以减...[>>…]
使用最新的Certbot在Ubuntu服务器上进行https免费证书申请和安装
多年之前已使用过certbot进行证书操作:http://04007.cn/article/507.html,最近服务器进行了升级,所有的服务都使用了docker服务。但是certbot在docker下面操作遇到了问题。于是在裸机中搭建了一个nginx服务,在这个层面设置https443服务转发给后端的docker容器,因此今天重新来操作certbot,certbot这几年也进行了功能升级了,比之前稍微复杂了一点,比如增加了snap工具,以前是没有的。好吧,开始吧。 如果之前安装过certbot的工具之类的东西,需要先进行删除,Re...[>>…]
Nginx允许多个域名又不使用*号的跨域访问配置
当浏览器发起ajax请求到其他域名时,会出现跨域的问题,可以通过在nginx的配置文件上的增加配置Access-Control-Allow-Origin来解决,但此参数只允许配置单个域名或者*,当我们需要允许多个域名跨域访问时不好配置,这时可以使用nginx的map来实现,使用map的配置方法如下: #nginx.conf部分相关配置内容如下 map$http_origin$origin_allowed{ default0; https://domain1.com1; https://domain2.com1; } map$origin_allowed$origin{ default""; 1$http_origin; } server{ server_namesomehost...[>>…]
Nginx配置中添加支持WebSocket
Nginx自从1.3版就支持WebSocket,也可以为WebSocket应用程序做反向代理和负载均衡。Websocket使用ws或wss作为统一资源标志符,类似于HTTP或HTTPS,默认Websocket的ws协议使用80端口;运行在TLS之上时,其中wss表示在TLS之上的Websocket,相当于HTTPS。wss协议默认使用443端口。wss就是ws基于SSL的安全传输。 Nginx配置域名支持WSS只需要添加Upgrade两行配置即可,如下: location/uri{ proxy_passhttp://127.0.0.1; proxy_http_version1.1; proxy_set_headerUpgrade$...[>>…]
nginx监听端口6000后的ERR_UNSAFE_PORT问题-nginx正常浏览器访问不了
在服务器上使用docker启动了nginx,由于端口限制,我使用了6000端口映射里面的80端口,启动成功后开始我使用microSoftEdga浏览器打开,发现竟然打不开,查看nginx的日志却发现请求根本没有发到nginx服务器上,但查看服务器上已经正常启动nginx并且在监听6000端口。挺奇怪的,之后我在服务器使用localhost以及IP加端口发现均能正常访问nginx。 问题出在哪呢?于是我在本地换了一个老版本的IE浏览器,这回发现竟然能成功,那到底是不是Edga太垃圾啊?好吧,网上对Edga确...[>>…]
【REP】关于nginx进程模型、事件模型、WEB事件、信号、定时器等nginx运行机制
众所周知,nginx性能高,而nginx的高性能与其架构是分不开的。那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧。 nginx在启动后,在unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。我们也可以手动地关掉后台模式,让nginx在前台运行,并且通过配置让nginx取消master进程,从而可以使nginx以单进程方式运行。很显然,生产环境下我们肯定不会这么做,所以关闭后台模式,一般是用来调试用的,在后面的章节里面,我...[>>…]