来自低版本 IIS 受害者的记录,愿你不会用到过时的软件。
最近我维护的几个网站需要启用 HTTPS,这些网站有多个不同的主域名,部署在 Windows Server 2008 SP 1 的 IIS 7.5 上面。
IIS 7.5 无法绑定多个 HTTPS 站点,以及用 Nginx 解决此问题的记录
三月之期已到,又到了折腾 https 证书的时候了。
今天去 certbot 官网看了看文档,发现了个好用的方法。
https://certbot.eff.org/docs/using.html#nginx
对于 nginx 服务器,只需执行 certbot --nginx
就能方便的创建 https 证书。
certbot 在 nginx 上创建 https 证书
因为最近网站搬到了vps上,我也开始考虑申请ssl证书,把网站升级到https。
但是说到证书这一块,就又触及到我的知识盲区了。后来还是找了教程摸索出来的。
申请Let's Encrypt 证书教程:
《windows申请免费SSL证书-Let's Encrypt》
(申请Let's Encrypt 证书有很多不同的途径,使用的工具和步骤也不尽相同,我这个办法好像比较麻烦,不过能对流程有个大致的了解。另外有一些我踩过的坑,我会在文末附加说明)
证书申请完成之后,如何导入到 IIS 以及在网站里绑定,参考下面文章的 IIS 部分:
《IIS部署SSL,.crt .key 的证书》
ps:导入pfx文件的时候密码不用填。
此外还需要将http请求的页面自动跳转到https,参考教程:
《(各种版本) http怎么做自动跳转https?》
我添加了里面的iis的规则,可以正常使用。
Read More →
windows+IIS 申请 Let's Encrypt 证书相关记录
dedecms后台有自定义表单功能,将前台表单数据保存到后台里。但是要查看只能去后台看,时间长了感觉非常的麻烦。于是我找到了将表单信息自动发送到邮箱的办法。
1.确保你有个开启了IMAP/SMTP功能的邮箱。
2.在 dedecms后台→系统→系统基本参数→核心设置中,设置你邮箱的smtp信息。
这里填好就行了,设置里有个“网站发信EMAIL”不用管。
3.在 dedecms的plus文件夹下找到diy.php,在85行的位置有如下语句:
$query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar) VALUES (NULL, 0 $addvalue); ";
在其下方添加发送邮件的代码即可(前两行要自己设置一下):
$mailtitle = "信息表单";//邮件标题 $mailbody = "姓名:{$name}\r\n联系方式:{$lianxi}";//花括号里是该元素的name属性 $headers = $cfg_adminemail;//用我们刚才设置的管理员邮箱发送 $mailtype = 'TXT';//邮件类型为文本类型 require_once(DEDEINC.'/mail.class.php');//加载 dedecms的邮件库 $smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);//创建smtp服务 $smtp->debug = false;//不启用调试 $smtp->sendmail($cfg_smtp_usermail,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);//发送邮件(收件人,网站名,发件人,邮件标题,邮件内容,邮件类型)
注意,第二行里按需填写表单控件的name值。如果你有很多表单项,可以一个个都写出来。
至此,当有表单提交时, dedecms就会自动往邮箱里发一封邮件了(自己往自己邮箱里发一封邮件)。
Read More →