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. Linux 查找文件

    find 查找目录 -name "文件名"find / -name "php.ini"locate 文件名locate php.ini 一:locate命令 l ...

  2. 关于spring AOP的学习

    比较好的帖子http://www.cnblogs.com/xing901022/p/4265544.html

  3. [转载]我的WCF之旅(1):创建一个简单的WCF程序

    为了使读者对基于WCF的编程模型有一个直观的映像,我将带领读者一步一步地创建一个完整的WCF应用.本应用功能虽然简单,但它涵盖了一个完整WCF应用的基本结构.对那些对WCF不是很了解的读者来说,这个例 ...

  4. 基于AQS的锁

    锁分为独占锁和共享锁,它们的主要实现都是依靠AbstractQueuedSynchronizer,这个类只提供一系列公共的方法,让子类来调用.基于我了解不深,从这个类的属性,方法,和独占锁的获取方式去 ...

  5. python3.5------day4--function

    函数 函数的作用: 1.减少重复代码 2.扩展性强 3.使程序变的可维护 函数的定义: def test(): print("I'm yao") #def 是固定的,test为函数 ...

  6. 学习Linux入门50个基本命令

    Linux系统以一切皆文件的方式运行系统.虽然存在ubuntu版本的图形界面,但在企业的服务器里面还是以命令行系统运行为主. 以下是初学50个基本的Linux命令行的体会 1:pwd 显示当前你所在的 ...

  7. JS,JQuery的扩展方法

    转 http://blog.csdn.net/tuwen/article/details/11464693 //JS的扩展方法: 1 定义类静态方法扩展 2 定义类对象方法扩展            ...

  8. re模块汇总

    text = 'The Attila the hun show' m = re.match('.',text)#任意单个字符 m.group() 'T' m = re.match('.*',text) ...

  9. 项目中可能用到的demo

    1. 轮播图   https://github.com/codingZero/XRCarouselView 2. 图表   https://github.com/Zirkfied/ZFChart

  10. maven配置之setting配置

    <!--声明语句--> <?xml version="1.0" encoding="UTF-8"?> <settings xmln ...