给服务器免费的ssl证书 http和https共存
2016-02-03 00:00
555 查看
服务器需要开启:openssl和 spdy,这个可以百度
一.生成crs和key
首先在:https://www.chinassl.net/ssltools/generator-csr.html
在线生成
在线生成
Country Name (2 letter code) [GB]: 输入国家地区代码,如中国的 CN
State or Province Name (full name) [Berkshire]: 地区省份
Locality Name (eg, city) [Newbury]: 城市名称
Organization Name (eg, company) [My Company Ltd]: 公司名称
Organizational Unit Name (eg, section) []: 部门名称
Common Name (eg, your name or your server’s hostname) []: 申请证书域名,如果是泛域名证书,则应该填写 *.example.com
Email Address []: 电子邮箱
生成的 csr 文件包含了主要的证书信息,key 文件主要包含了密钥交换和加密等信息(私钥,注意保存)。然后把 csr 文件提交给 CA 厂商
第二部:在 https://buy.wosign.com/free/#ssl 申请免费ssl证书,输入域名。为了全球兼容性,建议选择英文的。
选择好后,将crs填写到厂商。
填写好后
厂商会将:
mzhua_root_bundle.crt发到你的邮箱 或者你点击取回即可
mzhua_com.key 这个是我们第一步生成的
第三:配置服务器
然后重启nginx 就可以看到效果啦 http和https共存。
一.生成crs和key
首先在:https://www.chinassl.net/ssltools/generator-csr.html
在线生成
在线生成
Country Name (2 letter code) [GB]: 输入国家地区代码,如中国的 CN
State or Province Name (full name) [Berkshire]: 地区省份
Locality Name (eg, city) [Newbury]: 城市名称
Organization Name (eg, company) [My Company Ltd]: 公司名称
Organizational Unit Name (eg, section) []: 部门名称
Common Name (eg, your name or your server’s hostname) []: 申请证书域名,如果是泛域名证书,则应该填写 *.example.com
Email Address []: 电子邮箱
生成的 csr 文件包含了主要的证书信息,key 文件主要包含了密钥交换和加密等信息(私钥,注意保存)。然后把 csr 文件提交给 CA 厂商
第二部:在 https://buy.wosign.com/free/#ssl 申请免费ssl证书,输入域名。为了全球兼容性,建议选择英文的。
选择好后,将crs填写到厂商。
填写好后
厂商会将:
mzhua_root_bundle.crt发到你的邮箱 或者你点击取回即可
mzhua_com.key 这个是我们第一步生成的
第三:配置服务器
server { listen 80; listen 443 ssl spdy; server_name www.mzhua.com ; #告诉浏览器有SSL提供,缓存1年 ,当用户第二次访问时候,浏览器直接用ssl,直接跳转到ssl add_header Strict-Transport-Security max-age=31536000; #告诉浏览器 本宝宝域名不允许被 iframe add_header X-Frame-Options SAMEORIGIN; # SSL configuration ssl证书存放目录 ssl_certificate /home/ssl/mzhua_com/mzhua_com.crt; ssl_certificate_key /home/ssl/mzhua_com/mzhua_com.key; # don’t use SSLv3 ref: POODLE 保证安全避免降级攻击 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #缓存设置 ssl_session_cache shared:SSL:20m; ssl_session_timeout 20m; #加密协议 ssl_prefer_server_ciphers On; ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-RC4-SHA:ECDHE-RSA-RC4-SHA:ECDH-ECDSA-RC4-SHA:ECDH-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:RC4-SHA:HIGH:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!CBC:!EDH:!kEDH:!PSK:!SRP:!kECDH; #OCSP 装订(OCSP stapling) ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /home/ssl/mzhua_com/mzhua_com.crt; #告诉浏览器有SPDY add_header Alternate-Protocol 443:npn-spdy/3.1; #配置网站所在目录默认权限 index index.html index.php index.htm; root /home/mzhua_com; location ~ \.php { try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; set $path_info "";#初始化一个变量 set $real_script_name $fastcgi_script_name;#初始化一个变量,并且获取到一个原始赋值 if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {#检测如果.php后面还存在/开始参数,将参数处理 set $real_script_name $1;#将第一个正则子串匹配到的赋值 set $path_info $2;#将第二个正则子串匹配到的赋值 } #修改SCRIPT_FILENAME值 fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; #修改SCRIPT_NAME值 fastcgi_param SCRIPT_NAME $real_script_name; #修改PATH_INFO值 fastcgi_param PATH_INFO $path_info; #上述三个赋值都是replace into的模式,这些值都是写在fastcgi.conf中 } location / { #Rewrite启用; if (!-e $request_filename) { rewrite ^\/(.*)$ /index.php/$1 last; break; } } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; # 关闭日志记录 access_log off; # 关闭gzip压缩,减少CPU消耗,因为图片的压缩率不高。 gzip off; } location ~ .*\.(js|css)?$ { expires 12h; } #access_log off; #access_log /home/log/mzhua_com.log access; }
然后重启nginx 就可以看到效果啦 http和https共存。
相关文章推荐
- 访问Nginx发生SSL connection error的一种情况
- MySQL复制解决方案(Replication Solutions)
- Apache SSL服务器配置SSL详解
- 配置apache默认使用ssl的方法
- World Wide Web Publishing 服务尝试删除 IIS 所有的 SSL 配置数据失败的几种方法
- Apache、SSL、MySQL和PHP平滑无缝地安装
- mysql通过ssl的方式生成秘钥具体生成步骤
- windows服务器中检测PHP SSL是否开启以及开启SSL的方法
- python简单实现基于SSL的IRC bot实例
- Tomcat ssl报错Connector attribute SSLCertificateFile must be defined when using SSL with APR解决方法
- PHP实现支持SSL连接的SMTP邮件发送类
- 在Apache服务器上安装SSL支持的教程
- MySQL基于SSL协议进行主从复制的详细操作教程
- 提高NodeJS中SSL服务的性能
- PHP下SSL加密解密、验证、签名方法(很简单)
- LNMP系列教程之 SSL安装WordPress博客(程序下载与安装)
- IIS7下配置SSL的方法分析
- 在Nginx服务器中使用LibreSSL的教程