nginx

使用Let's Encrypt搭建永久免费的HTTPS服务

强颜欢笑 提交于 2021-01-14 08:26:42
1.概述 1.1 HTTPS概述 HTTPS即HTTP + TLS,TLS 是传输层加密协议,它的前身是 SSL 协议。我们知道HTTP协议是基于TCP的。简而言之HTTPS就是在TCP的基础上套一层TLS协议,对HTTP原来在TCP明文传输的内容进行加密,达到安全的目的。 HTTP 和 TLS 在协议层的位置以及 TLS 协议的组成如下图: 目前很多网站都启用了HTTPS,这肯定是未来的趋势。而且一些场景必须使用HTTPS协议的,比如微信公众号的某些功能、小程序接入H5等等。 详情参考:https://developer.baidu.com/resources/online/doc/security/https-pratice-1.html 1.2 Let’s Encripty介绍 Let’s Encrypt是一个非盈利的,免费的CA,可以提供免费HTTPS认证服务。 提供了一套完整的工具,基于这套工具,我们可以免费来搭建HTTPS 网站。 详情参考:https://letsencrypt.org/ 1.3 ssllabs介绍 ssllabs可以提供对https部署进行安全监测,评价的服务。 详情参考:https://www.ssllabs.com/ssltest/analyze.html 2.Let’s Encrypt部署HTTPS服务 2.1 为什么使用Let’s

Nginx详解六:Nginx基础篇之Nginx日志

大城市里の小女人 提交于 2021-01-14 06:33:22
1、Nginx日志类型 error.log:记录Nginx处理http请求的错误的状态,以及Nginx服务本身服务运行的错误的状态 access_log:记录通过Nginx的http请求的访问状态,用于对每一次访问的请求和客户进行的交互以及对行为的一些分析 实现方法:log_format error_log: access_log: 查看一下 2、Nginx变量 HTTP请求变量 - arg_PARAMETER、http_HEADER、sent_http_HEADER 内置变量 - Nginx内置的 自定义变量 - 自己定义 上面默认的日志里面是没有请求头的,这里配置让Nginx打印出请求头,比如user-agent 在main的参数里面加上'$http_user_agent '(全小写,且为了方便区分,在参数后面加了一个空格) 检查配置文件的正确与否:nginx -t -c /etc/nginx/nginx.conf 重新加载配置 请求一下本机 查看access.log日志 Nginx内置变量: 可以去官网了解:http://nginx.org/en/docs/http/ngx_http_log_module.html#access_log 3、 log_format里面默认记录的内容: 来源: oschina 链接: https://my.oschina.net/u

Nginx详解七:Nginx基础篇之Nginx官方模块

我的未来我决定 提交于 2021-01-14 06:25:38
Nginx官方模块 --with-http_stub_status_module:Nginx的客户端状态,用于监控连接的信息,配置语法如下: 配置语法:stub_status; 默认状态:- 配置方法:server,location(即,需配置在server或者location下) 检查配置语法是否正确:nginx -tc /etc/nginx/nginx.conf 重载nginx服务:nginx -s reload -c /etc/nginx/nginx.conf Active connections:nginx当前的连接数 server accepts handled requests 1 1 1 :第一个数代表nginx处理的握手的总的次数,第二个数代表nginx处理的连接数,第三个数代表总的请求数(正常情况应该握手数和连接数相等,即请求没有丢失) Reading: 0 Writing: 1 Waiting: 0 Reading、Writing、Waiting:都是表示当前的状态,Reading表示正在读的个数,Writing表示nginx正在写的个数,Waiting表示等待,在nginx开启长连接的情况下客户端和服务端已建立连接,但是既没有读也没有写的个数 --with-http_random_index_module :在主目录中随机选择一个文件作为默认的随机主页

Nginx下关于缓存控制字段cache-control的配置说明

馋奶兔 提交于 2021-01-14 06:25:21
HTTP协议的Cache -Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置 Cache-Control并不会影响另一个消息处理过程中的缓存处理过程。 请求时的缓存指令 包括: no-cache、no-store、max-age、 max-stale、min-fresh、only-if-cached等。 响应消息中的指令 包括: public、private、no-cache、no- store、no-transform、must-revalidate、proxy-revalidate、max-age。 下面做一详细总结, 方便在以后的运维工作中理解和运用. 一. 浏览器中关于Cache的3属性: 1. Cache-Control: 设置相对过期时间, max-age指明以秒为单位的缓存时间. 若对静态资源只缓存一次, 可以设置max-age的值为315360000000 (一万年). 比如对于提交的订单,为了防止浏览器回退重新提交,可以使用Cache-Control之no-store绝对禁止缓存,即便浏览器回退依然请求的是服务器,进而判断订单的状态给出相应的提示信息! Http协议的cache-control的常见取值及其组合释义: no-cache: 数据内容不能被缓存, 每次请求都重新访问服务器, 若有max-age, 则缓存期间不访问服务器. no

docker 安装 fastdfs

北战南征 提交于 2021-01-14 03:21:22
fastdfs 安装 //1、拉取镜像 docker pull morunchang/fastdfs //2、启动tracker docker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh //3、启动storage (172.21.91.218 ip 自行替换为docker 所在服务器的ip )( 此镜像不支持-p 参数) docker run -d --name storage --net=host -e TRACKER_IP=172.21.91.218:22122 -e GROUP_NAME=group1 morunchang/fastdfs sh storage.sh //4、防火墙添加端口 // 22122/23000 文件上传使用,不建议修改 // 8080 为storage容器中nginx的端口,用于浏览器文件访问使用,默认为8080,如需修改,请参考可选配置 建议修改 firewall-cmd --zone=public --add-port=22122/tcp --permanent firewall-cmd --zone=public --add-port=23000/tcp --permanent firewall-cmd --zone=public --add-port

安装docker fastdfs

房东的猫 提交于 2021-01-14 03:21:05
# step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # Step 3: 更新并安装 Docker-CE sudo yum makecache fast sudo yum -y install docker-ce # Step 4: 开启Docker服务 sudo service docker start 进入fastDFS阶段 1.拉取镜像 docker pull morunchang/fastdfs 2.运行tracker服务 docker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh 3.运行storage服务 docker run -d --privileged=true --name storage -p 80:80 --net=host -e TRACKER_IP=192.168.3.201:22122 -v /opt/fastdfs

OpenResty创造者

[亡魂溺海] 提交于 2021-01-14 03:08:37
OpenResty 是一个开源的 Web 平台,用于开发高性能和高动态的 Web 网关或者 Web 应用。OpenResty 最早是为了支持全网搜索引擎周边的相关搜索的 API 接口,后来我们基于 Nginx 和 LuaJIT 重写了 OpenResty,用于支持淘宝量子统计这款产品的所有数据 API,再后来,我加入美国的 CDN 公司 Cloudflare,使用 OpenResty 驱动 Cloudflare 全球 CDN 网络的动态 http 和 https 代理系统。 从出生的第一天起,OpenResty 就是开源的。这些年来, OpenResty 社区尝试把它用于各种不同的业务场景,有些场景甚至是我们完全无法想象的。 比如有的公司使用它构建分布式网络存储系统的前端和后端(比如网盘应用);有的用它来构建完整的 Web 应用,像电商平台的商品详情页的生成和大型体育赛事的 Web 管理系统;也有的公司基于它构建大型的互联网广告平台,或者更复杂的 Web API 管理系统;还有的公司拿它来驱动小流量调度的硬件盒子,或者驱动家居陪伴型机器人;当然,更多的还是用于实现那些流量非常庞大的 Web API。[似乎和流量相关的工作都有机会用到 OpenResty,我们也有用户使用完全基于 OpenResty 的权威 DNS 服务器。] OpenResty 的优势在于小巧灵活、高性动态。 基于

docker 安装 FastDFS

a 夏天 提交于 2021-01-14 03:02:50
1.查找Docker Hub上的redis镜像 docker search fastdfs 2.拉取镜像 docker pull delron/fastdfs #拉取最新版本 3.查看镜像 docker images 4.使用docker镜像构建tracker容器(跟踪服务器,起到调度的作用): docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs -v /etc/localtime:/etc/localtime delron/fastdfs tracker 5.使用docker镜像构建storage容器(存储服务器,提供容量和备份服务): docker run -dti --network=host --name storage -e TRACKER_SERVER=192.168.56.1:22122 -v /var/fdfs/storage:/var/fdfs -v /etc/localtime:/etc/localtime delron/fastdfs storage TRACKER_SERVER=本机的ip地址:22122 本机ip地址不要使用127.0.0.1 进入storage容器,到storage的配置文件中配置http访问的端口,配置文件在/etc

docker中的fastdfs

一个人想着一个人 提交于 2021-01-14 02:53:45
准备环节)(本文遗漏当初出现的一个问题由于是docker装的fastdfs所以tracker storage client,nginx,nginx module都在同一个容器中只需要修改配置 特别注意nginx端口修改后需要重启nginx 重启命令/etc/nginx/sbin/nginx -s reload ) (1)域名解析 关闭防火墙,或者放行端口 vim /etc/hosts (2)libfastcommon是从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库,基础环境,安装即可 下载libfastcommon wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz (3)解压 # tar -zxvf V1.0.7.tar.gz # cd libfastcommon-1.0.7 (4)编译、安装 # ./make.sh # ./make.sh install (5)libfastcommon.so 安装到了/usr/lib64/libfastcommon.so,但是FastDFS主程序设置的lib目录是/usr/local/lib,所以需要创建软链接 # ln -s /usr/lib64/libfastcommon.so /usr/local/lib

Openresty 与 Tengine

纵然是瞬间 提交于 2021-01-13 19:04:48
Openresty和Tengine基于 Nginx 的两个衍生版本,某种意义上他们都和淘宝有关系,前者是前淘宝工程师agentzh主导开发的,后者是淘宝的一个开源项目; Openresty的最大特点是引入了ngx_lua模块,支持使用lua开发插件; Tengine的特点是融入了因淘宝自身的一些业务带来的新功能; Tengine 简介 tengine官方网站: http://tengine.taobao.org/index_cn.html 在 Nginx官方版本的基础上增加的一些定制模块如下: 1、支持动态加载模块:通过加载so文件实现,不用再重新编译整个项目了,配置如下: dso { load ngx_http_lua_module.so; load ngx_http_memcached_module.so; } 2、ngx_proc_daytime_module模块,这个模块允许开一个独立的服务进程,该模块本身并未实现具体的业务逻辑,而是构建了一个TCP Server框架,等待开发者来实现自己的业务; 3、ngx_http_concat_module模块,用于合并多个文件的响应; 4、ngx_http_upstream_session_sticky_module模块,该模块是一个负载均衡模块,通过cookie实现客户端与后端服务器的会话保持,