apache和nginx开启https

  1. 1.安装mod_ssl和openssl  
  2. yum -y install mod_ssl openssl  
  3. 2.建立服务器密钥  
  4. mkdir /etc/httpd/conf.d/ssl.key/  
  5. cd /etc/httpd/conf.d/ssl.key/  
  6. openssl genrsa -out server.key 1024   
  7. 3.建立服务器公钥  
  8. openssl req -new -key server.key -out server.csr  
  9. 4.建立服务器证书   
  10. openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt  
  11. 5.最后对/etc/httpd/conf.d/ssl.conf 进行修改:将SSLCertificateFile和SSLCertificateKeyFile改成如下  
  12. SSLCertificateFile /etc/httpd/conf.d/ssl.key/server.cert  
  13. SSLCertificateKeyFile /etc/httpd/conf.d/ssl.key/server.key  
  14. 6.重启apache  
  15. 7.高级-》继续访问  


上面是apache开启https但是没有认证,nginx开启免费认证按照下面流程

1.第一步
配置一个https站点需要有一个ssl的证书,我们可以到以下网址去申请一个免费的ssl证书:

  1. https://buy.wosign.com/Free/#ssl    

2.第二步
有了ssl的证书后,我们可以将需要的服务器类型的压缩包解压后上传到服务器中。一共有两个文件,一个是.crt文件,还有一个是.key文件。

3.第三步
在原有的nginx的server配置中添加以下内容:

  1. listen       443 ssl;    
  2. server_name  xxx; #你的域名    
  3. ssl                  on;    
  4. ssl_certificate      xxx; #crt文件位置    
  5. ssl_certificate_key     xxx;#key文件位置    
  6. ssl_session_timeout  5m;    
  7. ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    
  8. ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;    
  9. ssl_prefer_server_ciphers   on;   
然后重启nginx,关闭浏览器并且清空缓存,就能够用https访问网站啦!

4.第四步
你可能会发现现在用http进不去网站了!怎么办呢?很简单,只要添加以下配置即可!

  1. server {    
  2.         listen 80;    
  3.         listen [::]:80 ssl ipv6only=on;    
  4.         server_name   xxx;#域名    
  5.         return 301 https://xxx$request_uri; #xxx为你的域名    
  6. }    
这样,用户即使不输入https,输入http也能访问了,所有连接都会被重定向到https页面! 
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值