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页面!

apache和nginx开启https的更多相关文章

  1. Nginx/Apache + acme.sh 实现https访问

    1 概述 acme.sh实现了acme协议,可以从Let's Encrypt生成免费的ssl证书用于实现https,本文介绍了常见的两种服务器Apache与Nginx上利用acme.sh配置https ...

  2. Ubuntu下配置apache开启https

    一.HTTPS简述随着网络的日常,信息安全越来越重要,传统的网站都是http协议明文传输,而HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网络协议,比http协议安全. 那ht ...

  3. Django开启https(不用nginx)

    首先安装需要用到的包 pip install django-extensions pip install django-werkzeug-debugger-runserver pip install ...

  4. Apache和Nginx配置支持苹果ATS方法

    什么是ATS功能? ATS是iOS9和OS X El Capitan的一个新特性.开启该功能后,ATS对使用NSURLConnection, CFURL或NSURLSession 等APIs 进行的网 ...

  5. 分享一个免费SSL证书申请网站,给网站开启https协议 | 张戈博客

    这些天,由于公司的业务需求,接触到了ssl证书和https协议.博客前几篇文章也分享了在WEB服务器上安装SSL证书,为网站开启https协议的教程,感兴趣的童鞋可以前往查看相关文章: <Lin ...

  6. 基于 Nginx 的 HTTPS 性能优化

    前言 分享一个卓见云的较多客户遇到HTTPS优化案例. 随着相关浏览器对HTTP协议的“不安全”.红色页面警告等严格措施的出台,以及向 iOS 应用的 ATS 要求和微信.支付宝小程序强制 HTTPS ...

  7. 基于 Nginx 的 HTTPS 性能优化实践

    前言 分享一个卓见云的较多客户遇到HTTPS优化案例. 随着相关浏览器对HTTP协议的“不安全”.红色页面警告等严格措施的出台,以及向 iOS 应用的 ATS 要求和微信.支付宝小程序强制 HTTPS ...

  8. Nginx+Tomcat+Https 服务器负载均衡配置

    这篇过气了! 重新补一个:http://www.cnblogs.com/hackyo/p/6809773.html 由于需要,得搭建个nginx+tomcat+https的服务器,搜了搜网上的发现总是 ...

  9. apache、nginx的虚拟域名配置和rewrite配置,以及web缓存的几种方式

    web缓存一般用来缓解数据库压力. 通常有几种方法,文件静态化,缓存服务memcached.redis等. 伪静态,一般指在url上貌似访问静态html页的形式,这样有利于搜索引擎访问到网站页面,实际 ...

随机推荐

  1. 在centos配置nginx+php的环境

    环境版本:centos6.8/nginx1.10.2/php5.6.29 ====================安装nginx1.10.2==================== #根据centos ...

  2. java单例模式

    单例模式(Singleton),保证一个类仅有一个实例,并提供一个访问它的全局访问点.   使用场景:在一个系统中,要求一个类有且仅有一个对象,如果出现多个对象就会出现"不良反映" ...

  3. iphone 开源汇总(转)

    原文地址 http://blog.csdn.net/devday/article/details/6105793 扫描wifi信息: http://code.google.com/p/uwecaugm ...

  4. 初学c# -- 学习笔记(六) winfrom组件圆角

    刚好用到这个功能,看了好些例子.我就不明白,简单的一个事,一些文章里的代码写的那个长啊,还让人看么. 精简后,就其实一点,只要有paint事件的组件,都可画圆角,没有的外面套一个panel就行了. u ...

  5. MyEclipse/Eclipse新建项目并且部署到服务器(tomcat)下

    1新建项目:file/new/web project/项目名/ok 2部署到tomcat下:tomcat右单机>>add/remove/选择项目/添加/完成(tomcat下有新建的项目) ...

  6. sscanf与正则表达式(转)

    今天翻google reader的时候看到这样一篇文章,介绍的是sscanf的高级用法.直到今天我才知道sscanf是可以直接用正则表达式的,惭愧. 在msdn中sscanf的声明如下 int ssc ...

  7. LDAP与禅道

    一:搭建禅道做测试  搭建过程参考http://www.cnblogs.com/hiyu/p/5841650.html 1):下载 ZenTaoPMS.Pro5.5.1.zbox_64.tar.gz ...

  8. CSS 图片倾斜的制作

    <style> #zhong{ height:600px; width:1350px; position:relative; z-index:2} .znei{ height:60px; ...

  9. css元素居中方法

    几种居中方式,分情况使用: 1.已知父盒子宽度,子盒子宽度: div{ transform: translate(-50%,-50%); //margin-left: - 自身宽度一半: positi ...

  10. hashMap的数据结构

    HashMap底层实现还是数组,只是数组的每一项都是一条链.