curl请求https时不验证证书

若用curl请求https的URL,默认是要求指定证书的,若不想验证证书,可以添加以下选项:

【参考:http://happyliu.blog.51cto.com/501986/1610974/】

nginx环境下如何强制访问https

方式一,rewrite:

方式二:meta标签refresh跳转:

【摘自:http://blog.csdn.net/wzy_1988/article/details/8549290】

默认访问443端口

原本默认端口是80端口,可以借助rewrite特性使访问80端口时,跳转到443端口。

前提:

httpd.conf中,开启mod_rewrite.so扩展

实现:

修改网站的conf配置文件,在80端口的配置中,增加以下代码即可,

【参考:https://www.oschina.net/question/2002859_232301】

letsencrypt的简单使用

参考:https://github.com/Neilpang/acme.sh

安装好acme.sh后,执行以下命令创建证书:

备注:若是nginx服务,虚拟主机的conf配置文件中要有如下配置信息:

参考:https://www.rmedgar.com/blog/using-acme-sh-with-nginx

让网站实现使用https访问

【更简单的实现方式:letsencrypt的简单使用

实现让网站使用https实现步骤:

第一步,下载letsencrypt。

第二步,使用命令模式为网站配置https。

第三步,修改网站conf配置文件,使其监听443端口,并开启SSL模式。

第四步,重启apache。

(此时,网站可以通过https协议访问,如https://example.com)

第五步,修改.htaccess文件,使网站访问模式默认为https。

【相关参考:】

1.安装使用letsencrypt:

参考:https://www.svennd.be/lets-encrypt-with-centos-6/

2.让访问网站走https,而不是http,:

设置.htaccess重定向,参考:http://blog.csdn.net/happyqyt/article/details/9663813

3.让wordpress使用https:

设置.htaccess重定向,参考:https://www.logcg.com/archives/961.html

4.命令安装方式:

5. .htaccess设置参考:

6.我的Https网站:https://about.lizhenguo.cn, https://lizhenguo.cn

7.通过服务器的定时计划任务,自动更新证书:

将以下内容保存在一个.sh的文件中

因证书每三个月过期,可以每两个月更新一次证书:

 

8. 如果出现如下提示,可能是你系统中的python版本是2.6,letsencrypt要求python是2.7版。

解决方法:

第一步,安装python2.7版

参考:<centos6默认python2.6升级2.7>

第二步,在一个新目录中重新下载一个letsencrypt

git clone https://github.com/letsencrypt/letsencrypt

第三步,在新下载的letsencrypt目录中,执行如下命令:

sed -i "s|--python python2|--python python2.7|" letsencrypt-auto

第四步,在新下载的letsencrypt目录中,使用命令安装方式,为网站配置https:

之后参考文章开头实现步骤的第三步、第四步、第五步。