当前位置: 首页 > news >正文

厦门网站优化推广制作小网站

厦门网站优化推广,制作小网站,wordpress开通邮件注册,wordpress建站过时了环境说明 linuxdockernginx版本:1.27 HTTP3/QUIC介绍 HTTP3是由IETF于2022年发布的一个标准#xff0c;文档地址为#xff1a;https://datatracker.ietf.org/doc/html/rfc9114 如rfc9114所述#xff0c;http3主要基于QUIC协议实现#xff0c;在具备高性能的同时又兼备了…环境说明 linuxdockernginx版本:1.27 HTTP3/QUIC介绍 HTTP3是由IETF于2022年发布的一个标准文档地址为https://datatracker.ietf.org/doc/html/rfc9114 如rfc9114所述http3主要基于QUIC协议实现在具备高性能的同时又兼备了可靠性的特点在大多数场景下可提高web应用的访问速率。 关于http3和quic的介绍网上资料有很多这里不再过多赘述。 自nginx的1.25.0版本开始nginx首次对http3进行了正式支持这也为我们在WEB服务器上部署http3提供了极大的便利。 本文以重实践角度出发使用web服务器——NGINX分享下如何在NGINX中开启HTTP3。 自签证书生成 http3必须依赖于TLS协议所以需要要证书。本文为了演示方便使用自签证书来进行操作。 自签证书仅用于验证或内网环境生产环境需要使用公共证书免费的有certbot(Let’s Encrypt) 自签证书并部署到NGINX中主要流程为 生成CA证书root_certificate使用CA证书生成NGINX服务器所需要的网站证书site_certificate将site_certificate配置到nginx中 自签CA证书生成 #1.生成根证书私钥 openssl genpkey -algorithm RSA -out root_private_key.pem -pkeyopt rsa_keygen_bits:4096#2.使用私钥创建CSR(证书签名请求) openssl req -new -key root_private_key.pem -out root_csr.pem -subj /CCN/STSiChuan/LChengDu/OHaiyangGroup/CNHaiyangRootCA #如上面命令报Cant load /root/.rnd into RNG可使用openssl rand -writerand ~/.rnd修复#3.创建CA配置文件 vim v3_ca.cfg --- [v3_ca] basicConstraints CA:TRUE keyUsage keyCertSign, cRLSign --- #4.生成根证书依赖CSR和CA配置文件 openssl x509 -req -days 3650 -in root_csr.pem -signkey root_private_key.pem -out root_certificate.pem -extensions v3_ca.cfg站点https证书生成 #1.生成站点私钥 openssl genpkey -algorithm RSA -out site_private_key.pem -pkeyopt rsa_keygen_bits:2048 #2.生成站点CSR(证书签名请求)CN填写为对应的域名 openssl req -new -key site_private_key.pem -out site_csr.pem -subj /CCN/STSiChuan/LBaZhong/OHaiyangCompany/CNwww.puhaiyang.com #3.编写服务alt_names部分修改为对应的域名和ip vim site_openssl.cnf --- [v3_req] keyUsage digitalSignature, keyEncipherment extendedKeyUsage serverAuth subjectAltName alt_names [alt_names] DNS.1 www.puhaiyang.com DNS.2 *.puhaiyang.com IP.1 192.168.31.174 ———————————————— #4.生成站点https证书依赖CA证书、CA私钥、站点CSR openssl x509 -req -in site_csr.pem -CA root_certificate.pem -CAkey root_private_key.pem -CAcreateserial -out site_certificate.pem -days 3650 -extensions v3_req -extfile site_openssl.cnf ---生成的CA证书与站点证书文件列表如下 验证根证书 #1.验证CA根证书 openssl x509 -in root_certificate.pem -text -noout #2.验证站点证书 openssl x509 -in site_certificate.pem -text -nooutnginx-http3配置与运行 nginx基础配置 # 创建挂载目录 mkdir -p /data/docker/nginx/conf mkdir -p /data/docker/nginx/log mkdir -p /data/docker/nginx/html mkdir -p /data/docker/nginx/certs # 生成临时容器, docker run --name nginx -d nginx # 验证nginx是否开启了http3查看有http_v3 docker exec -it nginx nginx -V # 将容器nginx.conf文件复制到宿主机 docker cp nginx:/etc/nginx/nginx.conf /data/docker/nginx/conf/nginx.conf # 将容器conf.d文件夹下内容复制到宿主机 docker cp nginx:/etc/nginx/conf.d /data/docker/nginx/conf/conf.d # 将容器中的html文件夹复制到宿主机 docker cp nginx:/usr/share/nginx/html /data/docker/nginx/ # 关闭该临时容器 docker stop nginx # 删除该临时容器 docker rm nginx验证nginx时截图如下需要确保nginx编译参数中开启了http3 docker exec -it nginx nginx -V nginx运行与站点配置 将生成的站点证书放到/data/nginx/certs目录下 cp site_private_key.pem /data/docker/nginx/certs/ cp site_certificate.pem /data/docker/nginx/certs/ #赋权限确保有读取权限 chmod r /data/docker/nginx/certs/*创建nginx的站点配置 vi /data/docker/nginx/conf/conf.d/www.puhaiyang.com.conf --- server {# http/3listen 443 quic reuseport;# http/2 and http/1.1listen 443 ssl;http2 on;server_name www.puhaiyang.com; # customize to match your domain# you need to mount these files when running this containerssl_certificate /usr/share/nginx/certs/site_certificate.pem;ssl_certificate_key /usr/share/nginx/certs/site_private_key.pem;# TLSv1.3 is required for QUIC.ssl_protocols TLSv1.2 TLSv1.3;# 0-RTT QUIC connection resumptionssl_early_data on;# Add Alt-Svc header to negotiate HTTP/3.add_header alt-svc h3:443; ma86400;# Sent when QUIC was usedadd_header QUIC-Status $http3;location / {root /usr/share/nginx/html;index index.html index.htm;} }更多详细配置可参考https://nginx.org/en/docs/http/ngx_http_v3_module.html 运行nginx-docker 因为http3基于QUIC协议QUIC又基于UDP协议在运行nginx的docker时记得将https的UDP端口也暴露到主机中。 docker run \ -p 80:80 -p 443:443 -p 443:443/udp \ --name nginx \ -v /data/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /data/docker/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /data/docker/nginx/log:/var/log/nginx \ -v /data/docker/nginx/html:/usr/share/nginx/html \ -v /data/docker/nginx/certs:/usr/share/nginx/certs \ -e TZAsia/Shanghai \ --restartalways \ -d nginx:latest验证时可使用netstat查看udp端口是否正确被暴露示例截图 输入nginx -v命令查看使用的nginx版本是否为较高版本的nginx docker exec -it nginx nginx -v 浏览器验证 nginx搭建好后就可以使用浏览器进行验证了。 浏览器支持QUIC验证 验证前需要确保浏览器(客户端)支持http3.0可访问https://quic.nginx.org/进行验证。 如提示支持quic或quic包验证也通过则说明客户端是支持http3的 如不支持可使用https://quic.nginx.org/提供的排查项进行逐步排查。 导入自签CA根证书到客户主机(可选) 如果是站点的tls证书是由自签ca证书生成的为了让浏览器访问网站更优雅可让先CA根证书导入到客户端系统中。 以本例为例则需要导入的证书文件为root_certificate.pem 在windows中打开certmgr.msc将证书导入到受信任的根证书颁发机构即可 访问自定义的http3站点 在浏览器中通过ip或域名访问搭建的站点。如本例中的https://www.puhaiyang.com (自定义虚拟域名需修改hosts文件) 打开浏览器的检查功能查看http请求协议是否为http/3。 还可以通过wireshark抓包进行验证 抓包协议栏显示为QUIC则证明nginx配置http3成功啦~ 下篇文章将使用实例结合理论与实践对比分析下http1.1、http2、http3在实际场景下的性能差别。
http://www.hkea.cn/news/14489310/

相关文章:

  • 上海浦东做网站的公司深圳网页设计机构
  • 网站改版后 存在大量404页面建设网站找什么条件
  • 网站字体规范网络品牌推广
  • 详细的网站规划建设方案服务器重庆专业网站推广时间
  • 专业做网站的公司网页设计与制作教程清华大学出版社
  • 怎么搭建个人网站电脑做服务器wordpress应用镜像
  • 网站购物商城功能模块图从零开始建设企业网站
  • 格力网站的建设情况谷歌账号注册入口官网
  • 中关村在线官方网站云南网站建设价格低
  • 电子商城网站设计公司哪个好东莞网站建设案例
  • 山东锦华建设集团有限公司网站福田欧曼故障灯图解大全
  • supercell账号注册网站谷歌seo优化什么意思
  • 自己做的网站图片挡住了导航栏网站备案信息如何注销吗
  • 一级a做爰片免费网站给我看看网站的构成
  • 酷站网1688跨境专供海外代发
  • 丰富网站内容做网站需要提供什么资料
  • 微网站后台内容设置企业网站设计原则
  • 网站开发架构如何设计一个网页自动运行
  • 3d虚拟人物制作软件seo发布网站
  • 门户网站建设步骤天津做网站优化公司
  • 做搜狗网站优化点击百度竞价排名公司
  • 桐乡建设规划局网站好的建筑设计网站推荐
  • 专业购物网站建设报价建设工程施工合同下载
  • 网站建设中如何发布信息推广重庆网架加工厂
  • 深圳好的网站建关键词挖掘查询工具爱站网
  • 双阳区住房和城乡建设局网站东莞宣布优化防疫措施
  • 哈尔滨网站建设策划方案iis 网站设置
  • 阜城县网站建设地方网站 o2o
  • 如何做自己的网站后台酒店网站建设目标
  • 定制网站开发哪家好佛山专业画册设计公司