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

公司网站开发模板建设集团摩托车

公司网站开发模板,建设集团摩托车,大连模板做网站,网站开发项目需求分析随着我们网站用户的增多#xff0c;我们会逐渐意识到HTTPS加密的重要性。在不修改现有代码的情况下#xff0c;要从HTTP升级到HTTPS#xff0c;让Nginx支持HTTPS是个很好的选择。今天我们来讲下如何从Nginx入手#xff0c;从HTTP升级到HTTPS#xff0c;同时支持静态网站和… 随着我们网站用户的增多我们会逐渐意识到HTTPS加密的重要性。在不修改现有代码的情况下要从HTTP升级到HTTPS让Nginx支持HTTPS是个很好的选择。今天我们来讲下如何从Nginx入手从HTTP升级到HTTPS同时支持静态网站和SpringBoot应用希望对大家有所帮助 生成SSL自签名证书 虽然自签名证书浏览器认为并不是安全的但是学习下SSL证书的生成还是很有必要的  首先创建SSL证书私钥期间需要输入两次用户名和密码生成文件为blog.key openssl genrsa -des3 -out blog.key 2048 利用私钥生成一个不需要输入密码的密钥文件生成文件为blog_nopass.key openssl rsa -in blog.key -out blog_nopass.key 创建SSL证书签名请求文件生成SSL证书时需要使用到生成文件为blog.csr openssl req -new -key blog.key -out blog.csr 在生成过程中我们需要输入一些信息需要注意的是Common Name需要和网站域名一致 Enter pass phrase for blog.key: ----- Country Name (2 letter code) [XX]:CN # 国家代码 State or Province Name (full name) []:jiangsu # 省份 Locality Name (eg, city) [Default City]:jiangsu # 城市 Organization Name (eg, company) [Default Company Ltd]:macrozheng # 机构名称 Organizational Unit Name (eg, section) []:dev # 单位名称 Common Name (eg, your name or your servers hostname) []:blog.macrozheng.com # 网站域名 Email Address []:macrozhengqq.com # 邮箱Please enter the following extra attributes to be sent with your certificate request A challenge password []: # 私钥保护密码,可以不输入直接回车 An optional company name []: # 可选公司名称可以不输入直接回车 生成SSL证书有效期为365天生成文件为blog.crt openssl x509 -req -days 365 -in blog.csr -signkey blog.key -out blog.crt 其实最终有用的文件是两个一个是证书文件blog.crt另一个是不需要输入密码的证书私钥文件blog_nopass.key。 Nginx支持HTTPS SSL证书生成好了接下来我们就可以配置Nginx来支持HTTPS了 安装Nginx 我们还是使用在Docker容器中安装Nginx的方式先下载Nginx的Docker镜像 docker pull nginx:1.10 下载完成后先运行一次Nginx由于之后我们要把宿主机的Nginx配置文件映射到Docker容器中去运行一次方便我们拷贝默认配置 docker run -p 80:80 --name nginx \ -v /mydata/nginx/html:/usr/share/nginx/html \ -v /mydata/nginx/logs:/var/log/nginx \ -d nginx:1.10 运行成功后将容器中的Nginx配置目录拷贝到宿主机上去 docker container cp nginx:/etc/nginx /mydata/nginx/ 将宿主机上的nginx目录改名为conf要不然/mydata/nginx/nginx这个配置文件目录看着有点别扭 mv /mydata/nginx/nginx /mydata/nginx/conf 创建的Nginx容器复制完配置后就没用了停止并删除容器 docker stop nginx docker rm nginx 使用Docker命令重新启动Nginx服务需要映射好配置文件由于我们要支持HTTPS还需要开放443端口 docker run -p 80:80 -p 443:443 --name nginx \ -v /mydata/nginx/html:/usr/share/nginx/html \ -v /mydata/nginx/logs:/var/log/nginx \ -v /mydata/nginx/conf:/etc/nginx \ -d nginx:1.10 配置支持HTTPS 将我们生成好的SSL证书和私钥拷贝到Nginx的html/ssl目录下 cp blog_nopass.key /mydata/nginx/html/ssl/ cp blog.crt /mydata/nginx/html/ssl/ 接下来我们需要给blog.macrozheng.com这个域名添加HTTPS支持在/mydata/nginx/conf/conf.d/目录下添加Nginx配置文件blog.conf配置文件内容如下 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; # 配置SSL加密算法ssl_prefer_server_ciphers on; # 优先采取服务器算法ssl_session_cache shared:SSL:10m; # 配置共享会话缓存大小ssl_session_timeout 10m; # 配置会话超时时间location / {root /usr/share/nginx/html/www;index index.html index.htm;}location /admin {alias /usr/share/nginx/html/admin;index index.html index.htm;}location /app {alias /usr/share/nginx/html/app;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location /50x.html {root /usr/share/nginx/html;} } 通过HTTPS访问blog.macrozheng.com这个域名由于我们使用的是自己签名的SSL证书浏览器会提示您的连接不是私密连接点击继续前往可以通过HTTPS正常访问我们可以查看下证书的颁发者信息可以发现正好是之前我们创建SSL证书签名请求文件时录入的信息接下来我们需要给api.macrozheng.com这个域名添加HTTPS支持通过这个域名可以使用HTTPS访问我们的SpringBoot应用api.crt和api_nopass.key文件需要自行生成在/mydata/nginx/conf/conf.d/目录下添加Nginx配置文件api.conf配置文件内容如下 server {listen 80; # 同时支持HTTPlisten 443 ssl; # 添加HTTPS支持server_name api.macrozheng.com; #修改域名#ssl配置ssl_certificate /usr/share/nginx/html/ssl/api/api.crt; # 配置证书ssl_certificate_key /usr/share/nginx/html/ssl/api/api_nopass.key; # 配置证书私钥ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # 配置SSL协议版本 # 配置SSL加密算法ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on; # 优先采取服务器算法ssl_session_cache shared:SSL:10m; # 配置共享会话缓存大小ssl_session_timeout 10m; # 配置会话超时时间location / {proxy_pass http://192.168.3.101:8080; # 设置代理服务访问地址proxy_set_header Host $http_host; # 设置客户端真实的域名包括端口号proxy_set_header X-Real-IP $remote_addr; # 设置客户端真实IPproxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 设置在多层代理时会包含真实客户端及中间每个代理服务器的IPproxy_set_header X-Forwarded-Proto $scheme; # 设置客户端真实的协议http还是httpsindex index.html index.htm;}error_page 500 502 503 504 /50x.html;location /50x.html {root /usr/share/nginx/html;} } 通过HTTPS访问api.macrozheng.com这个域名访问地址为https://api.xx.com/sw...任意调用一个接口测试下比如说登录接口可以发现已经可以通过HTTPS正常访问SpringBoot应用提供的接口。 使用受信任的证书 之前我们使用的是自签名的SSL证书对于浏览器来说是无效的。使用权威机构颁发的SSL证书浏览器才会认为是有效的这里给大家推荐两种申请免费SSL证书的方法一种是从阿里云申请另一种是从FreeSSL申请。 阿里云证书 阿里云上可以申请的免费证书目前只有支持单个域名的DV级SSL证书。比如说你有blog.macrozheng.com和api.macrozheng.com两个二级域名需要使用HTTPS就需要申请两个SSL证书。申请成功后点击下载Nginx证书即可下载完成后解压会有下面两个文件 blog.macrozheng.com.key # 证书私钥文件 blog.macrozheng.com.pem # 证书文件 拷贝证书文件到Nginx的指定目录下然后修改配置文件blog.conf只要修改证书配置路径即可修改完成后重启Nginx #SSL配置 ssl_certificate /usr/share/nginx/html/ssl/blog/blog.macrozheng.com.pem; # 配置证书 ssl_certificate_key /usr/share/nginx/html/ssl/blog/blog.macrozheng.com.key; # 配置证书私钥 再次通过HTTPS访问blog.macrozheng.com这个域名发现证书已经有效了连接也是安全的了。 FreeSSL证书 如果你有使用通配符域名的需求可以上FreeSSL申请SSL证书不过免费的有效期只有3个月这就意味着你过3个月就要重新申请一次了。附上官网地址https://freessl.cn/ 使用acme.sh自动申请证书 acme.sh脚本实现了acme协议, 可以从letsencrypt生成免费的证书。一般我们申请的证书有效期都是1年过期就要重新申请了使用acme.sh脚本可以实现到期自动申请再也不用担心证书过期了https://github.com/acmesh-official/acme.sh   官网地址
http://www.yayakq.cn/news/5190/

相关文章:

  • 深圳企业网站模板重庆市哪个区最繁华
  • wordpress站点字体修改西部数码网站管理助手错误
  • 如何禁止某ip访问网站网站网站建设设计
  • 建设企业网站平台主要的目的是界面设计模式读后感
  • 怎么用php做网站后台程序企业网站 优秀
  • 手机网站设计教育类模板夏天做那些网站致富
  • 旅游网站的设计方案怎么做网站设置密码
  • 徐州做网站xlec网站开发一级分销
  • 电信ip做的网站移动不能访问公司官网开发
  • 做暧暖网站江阳建设集团网站
  • 专业设计网站公司网站建设捌金手指花总四
  • 个人网站制作总体设计蓝色门户网站
  • 怎么给自己公司做网站wordpress开发软件
  • 劲松网站建设公司wordpress做导航站
  • 创新的做pc端网站网站免费视频
  • 在菲做平台网站500强企业网站有哪些
  • 百度网站搜索关键字河北邢台出大事啦
  • 亚马逊没有网站怎么做seo亚马逊雨林动物大全
  • 农产品网站开发背景四会网站建设
  • 网站推广都有哪些公司注册资金可以取出来吗
  • 做网站的公司怎么做业务上海营销型网站开发
  • 网站做网站做任务手机网店开店网站
  • 广州网站优化地址网络优化关键词
  • 查询注册过的网站wordpress 判断登录页面跳转
  • 怎样建立网站ip地址wordpress排版问题
  • 哪里有免费的网站推广软件nodejs做网站的弊端
  • 网站规划小结steam交易链接怎么用
  • 电商网站 性能目标有哪些wordpress设置中文
  • dw软件做二级连接网站重庆seo多少钱
  • 有哪几种语言做的网站内部网站建设要求