在服务器上正确配置域名https证书(ssl)及为什么不推荐使用宝塔申请免费ssl证书

简介: 在服务器上正确配置域名https证书(ssl)及为什么不推荐使用宝塔申请免费ssl证书

无宝塔

  1. 申请证书(我这里举阿里云申请到的例子)



  2. 配置文件的位置
    一般在
/usr/local/nginx/conf/vhost
/www/server/nginx/conf
/www/server/panel/vhost/nginx

或者


  1. 里面有个证书路径,换掉就行,主域名和子域名配置好像有所不同

以wx.youjia66.com为例,配置信息如下

  server {
      listen      443 ssl;
      client_header_timeout 30s;
      deny 100.100.0.31;
      server_name wx.youjia66.com;
      root   /site/weiqin;
      ssl    on;
      # 证书路径
      ssl_certificate   /etc/nginx/cert/youjia.com/youjia66.com.pem;
      ssl_certificate_key  /etc/nginx/cert/youjia.com/youjia66.com.key;
      ssl_session_timeout 5m;
      ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      ssl_prefer_server_ciphers on; 
      access_log /var/log/nginx/access_wx.youjia.com.log main;
      error_log /var/log/nginx/error_wx.youjia.com.cn.log;
      index index.php  index.html index.htm;
      fastcgi_intercept_errors on;
      error_page  404              /public/error.html;
      client_max_body_size     10m;  
  
      location / {
          index index.php index.html;
          if (!-e $request_filename) {
              rewrite  ^(.*)$  /index.php?s=$1  last;
              break;
          }
      }
  
      location ~ .*\.(svn|git|log|pem) {
          return 404;
      }
      add_header X-Frame-Options SAMEORIGIN;
  
      location ~ \.php {
          fastcgi_pass   127.0.0.1:9000;
          fastcgi_index  index.php;
          fastcgi_split_path_info ^(.+\.php)(.*)$;
          fastcgi_param  PATH_INFO $fastcgi_path_info;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          include        fastcgi_params;
      }
  
      location ~ ^/(static|data|upload|images|javascript|js|css|flash|media)/ {
          expires 30d;
      }
  
      location ~ ^/(application|system|captcha|session)/ {
          deny all;
          return 404;
      }
  
      location ~.*\.(js|css|png|jpg)$ {
          expires    3d;
      }
  
      location ~ /\.ht {
          deny  all;
      }
  }
  server {
      listen 80;
      server_name wx.youjia66.com;
      rewrite ^(.*)$ https://$host$1 permanent;
  }

以www.dian68.net为例,配置信息如下

  server {
      listen      443 ssl default_server;
      if ($http_host = dian68.net) {
          rewrite ^(.*)$ https://www.dian68.net$1 permanent;
      }
  
      client_header_timeout 30s;
      deny 100.100.0.31;
      server_name dian68.net www.dian68.net;
      root   /site/weiqin;
      ssl    on;
      ssl_certificate   /etc/nginx/cert/dian68.net/dian68.net.pem;
      ssl_certificate_key  /etc/nginx/cert/dian68.net/dian68.net.key;
      ssl_session_timeout 5m;
      ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      ssl_prefer_server_ciphers on; 
      access_log /var/log/nginx/access_www.dian68.net.log main;
      error_log /var/log/nginx/error_www.dian68.net.log;
      index index.php  index.html index.htm;
      fastcgi_intercept_errors on;
      error_page  404              /public/error.html;
      client_max_body_size     10m;  
  
      location / {
          index index.php index.html;
          if (!-e $request_filename) {
              rewrite  ^(.*)$  /index.php?s=$1  last;
              break;
          }
      }
  
      location ~ .*\.(svn|git|log|pem) {
          return 404;
      }
      add_header X-Frame-Options SAMEORIGIN;
  
      location ~ \.php {
          fastcgi_pass   127.0.0.1:9000;
          # fastcgi_pass   unix:/var/run/php-fpm/php72-fpm.sock;
          fastcgi_split_path_info ^(.+\.php)(.*)$;
          fastcgi_param  PATH_INFO $fastcgi_path_info;
          include        fastcgi_params;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          proxy_cache cache_one;
      }
  
      location ~ ^/(static|data|upload|images|javascript|js|css|flash|media)/ {
          expires 30d;
      }
  
      location ~ ^/(application|system|captcha|session)/ {
          deny all;
          return 404;
      }
  
      location ~.*\.(js|css|png|jpg)$ {
          expires    3d;
      }
  
      location ~ /\.ht {
          deny  all;
      }
  }

  server {
      listen 80 default_server;
      server_name dian68.net www.dian68.net;
      if ($http_host = dian68.net) {
          rewrite ^(.*)$ https://www.dian68.net$1 permanent;
      }
      if ($http_host = www.dian68.net) {
          rewrite ^(.*)$ https://www.dian68.net$1 permanent;
      }
      return 403;
      #rewrite ^(.*)$ https://$host$1 permanent;
  }

注意

修改证书后,需要重载nginx配置,不然不会生效(之前就在这里跌了大坑,客户找我说怎么没有效果)

去服务器依次输入下列命令重载nginx配置:
nginx -t
nginx -s reload

有宝塔

有宝塔就简单很多了,直接申请,部署

注意:虽然简单,但是我还是推荐去使用阿里云ssl证书,宝塔的证书总是会存在各种未知问题,有些地方好像并不承认宝塔的ssl证书,之前我小程序开发就遇到,老式安卓手机前端无法调起接口,听同事说好像还有一些支付调用也是用不了,出问题了就欲哭无泪了

目录
相关文章
|
安全 算法 网络协议
解析:HTTPS通过SSL/TLS证书加密的原理与逻辑
HTTPS通过SSL/TLS证书加密,结合对称与非对称加密及数字证书验证实现安全通信。首先,服务器发送含公钥的数字证书,客户端验证其合法性后生成随机数并用公钥加密发送给服务器,双方据此生成相同的对称密钥。后续通信使用对称加密确保高效性和安全性。同时,数字证书验证服务器身份,防止中间人攻击;哈希算法和数字签名确保数据完整性,防止篡改。整个流程保障了身份认证、数据加密和完整性保护。
求助!怎么上传第三方HTTPS证书?为什么我上传lets encrypt的证书显示私钥格式异常?
用户上传证书时遇到问题,提示格式异常,已尝试转换RSA格式仍未解决。
|
人工智能 安全 算法
HTTPS 的「秘钥交换 + 证书校验」全流程
HTTPS 通过“证书如身份证、密钥交换如临时暗号”的握手流程,实现身份认证与数据加密双重保障,确保通信安全可靠。
1357 0
|
安全 数据建模 应用服务中间件
SSL证书怎么获得?获得后如何安装到服务器?
在当今互联网时代,SSL证书是保障网站安全的重要工具,实现HTTPS加密和身份认证,防止数据劫持或篡改,提升SEO效果。获取SSL证书需选择可信的CA机构、选择证书类型、生成CSR、验证域名及企业信息并获取证书。安装SSL证书到服务器(如Nginx)涉及上传证书文件、配置Nginx并重启服务。具体步骤可参考详细教程。 简介:SSL证书对网站安全至关重要,涵盖获取与安装流程,包括选择CA、生成CSR、验证信息、配置服务器等关键步骤。
|
域名解析 弹性计算 负载均衡
新手上云教程参考:阿里云服务器租用、域名注册、备案及域名解析流程图文教程
对于想要在阿里云上搭建网站或应用的用户来说,购买阿里云服务器和注册域名,绑定以及备案的流程至关重要。本文将以图文形式为您介绍阿里云服务器购买、域名注册、备案及绑定的全流程,以供参考,帮助用户轻松上手。
|
安全 算法 数据建模
HTTPS证书类型和品牌一览
HTTPS证书(SSL证书)是保障网站数据传输安全与身份可信认证的重要工具,适用于电商、企业官网等各类平台。证书主要分为DV(域名验证)、OV(企业验证)、EV(扩展验证)三种安全级别,以及单域名、通配符、多域名等不同覆盖类型。品牌方面,既有高性价比的国产锐安信、CFCA,也有国际知名的Sectigo、Digicert。
|
Web App开发 安全 应用服务中间件
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
432 19
|
网络安全 开发者
如何解决HTTPS协议在WordPress升级后对网站不兼容的问题
以上就是解决WordPress升级后HTTPS协议对网站的不兼容问题的方法。希望能把这个棘手的问题看成是学校的管理问题一样来应对,将复杂的技术问题变得更加有趣和形象,并寻觅出解决问题的方式。希望你的网站能在新的学期得到更好的发展!
361 19
|
JSON 安全 网络协议
HTTP/HTTPS协议(请求响应模型、状态码)
本文简要介绍了HTTP与HTTPS协议的基础知识。HTTP是一种无状态的超文本传输协议,基于TCP/IP,常用80端口,通过请求-响应模型实现客户端与服务器间的通信;HTTPS为HTTP的安全版本,基于SSL/TLS加密技术,使用443端口,确保数据传输的安全性。文中还详细描述了HTTP请求方法(如GET、POST)、请求与响应头字段、状态码分类及意义,并对比了两者在请求-响应模型中的安全性差异。
1189 20

热门文章

最新文章