系统配置记录
2021/4/2,SPF+DKIM+DMARC, SSL设定
用WordPress插件Email Subscribers建立邮件列表,经简单测试,功能上完全可以替代MailChimp,与整个WordPress系统的整合好像还更好。尝试着导入原MailChimp的邮件订阅,很顺利,而发送邮件的时候发现问题,很多邮件被拒收,估计是发送频率的问题。
查阅网络文章,发现如果邮件系统有做过加密认证的话,发送成功率会高。虽然Google也有这种服务,但是需要Google Workplace账户,作罢;最后选择了easydmarc的免费方案,每月可以发送10K封邮件,而阿里企业邮件每日发送量为2K。就我们目前的需求而言,够了。
既然邮件系统有加密认证,网站也该弄个SSL。阿里有免费的SSL证书服务(1年),申请、下载都很容易,部署到服务器的时候有点麻烦。阿里提供了一项SSL部署收费服务,感觉很不爽,就自己干。
查看教程,说是把认证文件拷贝到服务器的相关目录,修改default-ssl.conf就可以了,可是照做后还是没有HTTPS访问,多方查找,发现是443端口的请求没有从host传递到container。
要增加映射443端口,需要先杀掉container然后重建,这样的话原来container中的数据就有危险,包括所有的课程和用户信息。在两位大咖的指导下,将container中的数据拷贝出来,作为新建container链接的volume,HTTPS访问畅通,可是又引发了新问题。
新问题是:除主页外,其他页面链接失效;页面/文章无法更新,显示JSON调用错误;上传媒体以及更新插件时要求输入FTP用户信息,这个应该是重装WordPress的常见问题,网络上有N多的解决方案。
从故障现象判定,主要是两个问题:一个是permanent link的问题,另一个是访问权限的问题。按原来的permanent link格式重新保存,将访问权限给到www-data,全部正常。
2020/9/14,LearnPress课程设置
一周前就通知学员们注册课程,陆陆续续,但这两天特别忙。有些人就是要拖到最后一天,然后催着你马上处理。幸亏今天不上课,否则会很麻烦。从学员的咨询和反馈来看,反映最多的几个问题:
- “审核”只能看到对错,但看不到答案和解析
这个不是问题,而是课程设置的原因。因为是模拟考试,且会有视频讲解,同时还设定为学员可以重做5次,因此设定为“不显示正确答案”; - 前期的做题记录看不到了(@Well报告)
可能原因有两个,一个是重做提交覆盖了原记录,另一个原因是新订单生效,将前期订单的数据清零; - 无法点开模拟测试做题(早期用户报告)
原因是原订单时间超出了课程设定的有效时限(10周),修改原订单时间无法解决问题,重设订单可以解决。
看LearnPress课程(课时+测验)的设置选项,订单时效是已课程为单位来计量的,而重做次数、正确答案等则是已测验为单位。往后改善的方式:
- 课程时效设定,是限时好,还是不限时更好?每期课程准备时间3个月左右,限时14周差不多,但是有提前报名和延期考试的事情发生;不限时会影响课程授权;
- 重做次数设定为5次很恰当。如果设定为只能做一次,会引发更严重的后果。倒是要提醒学员,多次提交会覆盖前期记录;
- 多次提交订单似乎无解,除非能够增加一个已学员为基础、且可以Rollback的功能,或者是能够找到LearnPress学员报告的Addin。现阶段,还是增加一个提醒:请勿多次提交订单。
2020/4/19,MailChimp & Yada Wiki
课后练习已经投入使用,课程订阅者60+,调查发现绝大部分的用户正常,有2位用户反映“难以忍受”的慢,没有仔细了解这两位用户的应用环境,许是从海外接入?
后台查看了服务器状态,CPU/Network/Disk都正常。虽然是一台很搓的开发测试服务器,可玩性好像还非常不错,负载能力也还行。不知道课程视频上去之后情况会怎么样,要找个时间测试一下。
这几天在直播之余,继续对系统做了一些完善:
- [O] 50道课后摸底测试卷录入、校对;
- [O] 模拟测试卷 simulation 6-01录入、校对;
- [O] 模拟测试卷 simulation 6-02录入;
- [X] 模拟测试卷 simulation 6-02校对;
- [X] 测试卷分时间点上线;
- [ ] MC4MP: Mailchimp for WordPress 插件测试;
- [ ] Yada Wiki 插件测试。
MC4MP: Mailchimp for WordPress
现在用Mailchimp建立邮件列表,有两个大问题:
- Mailchimp的sign-up form嵌入网页,loading速度很慢;
这个大概无解,Mailchimp没有在国内设置服务器 - Mailchimp只能用它定义好的元素来构建邮件,且已经发送过的邮件无法重新发送,只能copy,不爽。
为解决这两个问题,就想着WordPress上找个群发邮件的插件。看了一圈觉得都不怎么靠谱,还是安装了MC4MP。能解决在本地设置sign-up form的问题,为这点事多装一个插件值得吗?
Yada Wiki
计划做一个“PMP认证考试百问”,想做成Wiki的形式,无论是问题还是对问题的解答都由网友完成。没有测试看起来很专业的那个WordPress Knowledge Base,太贵,选了Yada Wiki。测试下来:
- 能够满足做Wiki的基本要求;
- 把TOC插入Sidebar,引发了新问题;
- 两个编辑器不兼容。
Custom Sidebar
Wiki页面一定要有导航栏,最直接想到的方案就是加上Sidebar。WordPress太搞笑了,大概只关注博客一种应用场景。虽然可以设定Sidebar,也可以把Wiki TOC加到Sidebar上,可是要么所有页面都加上了,要么所有的页面都没有。
Google查找解决方案,找到一大堆的结果,基本上都是用插件解决问题,比如据说是用起来很方便的这个Custom Sidebar,未曾安装测试。
2020/4/9,LearnPress的Quiz
在LearnPress系统中,可以在课程中加入测验,并可以设定将测验作为课程考核的方式。
LearnPress实现测验的逻辑是 Courses -> Quiz -> Questions。从用户的角度看,主体是Courses, Quiz只是与Lessons同级别的一种课程元素;而从后台看,Questions才是最基本的构成元素。
完成了10个课后练习的Quiz,共计195道练习题。整个过程充满艰辛:
- 从Question Bank (in Excel) 中挑选合适的练习题,尽可能覆盖课程中的主要知识点;[任何系统都少不了这一步]
- 用Email Merge将选定的questions整理成方便系统输入的格式 (in MS Word);
- 在LearnPress中增加Quiz,填写试卷说明,设定计时/重复/复查等选项;
- 在Quiz中增加Questions, 只能逐题、逐栏位copy/paste;[这个设计太愚蠢,使用费时,应该有个import CSV之类的功能];
- 检查并发布。
接下来要将 Assessment (50 Questions) 和 Simulation (2*200 Questions) 导入系统,想想都害怕,等有空的时候再处理吧,要到五六月才会用到。
整个流程走下来,发现LearnPress有好的地方,也有些地方不爽。
- [O] 发布的课程在PC端和移动端均可接受;
- [O] 经测试,在Course中可以插入未经分配的Lessons, 想象中最Quiz中也应该可以插入未经分配的Questions;[未测试]
- [X] 同一个Lesson,无法分配给多个Courses,只能用建立一个拷贝;
- [X] 测试界面颜色太多,晃眼;
- [X] 测试界面不友好,选项占位太大,题干字体太小;
- [X] 测试界面button字体小,且button的位置不固定,用以点错;
- [X] review页面错题不显示解析;
- [X] 缺乏错题集功能,review要一道一道来;
- [X] 缺乏统计分析功能。
LearnPress本就不是为“考试”而设计的,所谓的Quiz也仅仅是对课程的辅助,因此功能有限。对于我们这种应用场景,应该寻找一个更专业的解决方案。
可能面临的麻烦:LearnPress的课程授权是通过订单来处理的。针对考试的解决方案,如何能够与LearnPress系统对接,要特别注意。
2020/4/7,进展及问题
这几天忙着其他的事情,只是无聊的时候玩玩这个系统。陆续测试了一些方案,做个记录。
视频测试
视频本身流量大,播放视频对服务器和带宽都有要求。思考后发现,要有较好的播放体验,同时满足视频保密的要求,比较靠谱的方法,大概是找个专业的视频托管网站。
- 阿里云视频点播。先要把服务挂在自有的域名上,同时在服务器端安装上阿里的一些跟视频相关的东西,主要是为了获得临时播放授权。这个做法应该是最专业的,配置麻烦一些,还没有搞定;
- 保利威视云 (polyv), 存储的地方应该是腾讯云。用起来很方便,每个视频都有自己唯一的嵌入代码,但是必须要把视频文件设置为“不保密”。由于嵌入代码是写在网页里的,安全性存疑;另外,试用期只有6天,且没有公布价格标准,需要联络客服;
- Viemo, 这个应该比较大牌?使用方法与polyv差不多。为了获得ebed代码,花了USD12,可后来发现这个网站在Q内根本访问不了,要记得申请refund.
测试过的几个服务商,基本上都有自己的播放器,速度也不错,性能上的差异可以忽略不计。如果不考虑使用成本的话,阿里云视频点播是不错的选择,需要获得更多信息才能最后决定。
系统插件 Plug-ins
看别人的网页做得那么漂亮,而我们的网页看起来就很平淡,这个是设计能力的问题,再次明白隔行如隔山,专业的事情应该交由专业的人士去处理。
在没有资金请专业人士之前,何不尝试一下各种插件呢?按照LearnPress插件给出的提示,尝试:
- Elegant Clocks – Amazing Gutenberg Blocks. 看起来确实不错,有我所需要的效果组件,大爽。可是不久后发现两个问题,一个是loading网页非常慢,另一个是button上的字错位,跑到按钮下面去了,卸载;
- Ultimate Addons for Gutenbert. 与上面那个同时安装的,blocks可设置的部分没有那么多,也没有我想要的某些组件,勉强用着。
以后在安装插件的时候要特别小心,是不是该先将整个系统做个备份?像这些测试过的主题和插件,即便卸载掉也会在系统中留下一些痕迹,感觉很不爽。
LearnPress中Button上的字体太小
尝试着用Inspect做了个定位,最后定位到Theme中的style.css。把font-size从0.75rem改为12px,显示正常。
rem这种相对单位应该优于px这种绝对单位。如果父级原始的font-size是16px,那么0.75rem正好是12px。因此在这里修改font-size不是根本的处理方法,而应该去查找更深层次的原因。
2020/4/4,进展及问题
今天出去玩了一天。
经专家指点,今天搞定了系统发送邮件的问题,新用户注册功能已经跑通了。
新问题:新用户首次登陆要求修改密码,很好;登录完成后如何跳转到指定的某个页面?系统default统一跳转到Dashboard.
2020/4/3,进展及问题
昨天晚上看了下youkaoshi, 免费方案收到很多约束,比如同时在线10人,比如每月试卷3份,而升级到收费方案的话价格有点贵。考虑到我们的dev系统正好也缺乏测试环境,正好借11日这个Live课程的机会,把练习/模拟部分放到我们自己的系统上试试看。
已经测试及解决的问题
- 新用户注册:收集name/mobile/email,手工加入用户;
- 新用户注册:注意勾选掉“工具条”选项;
- 试卷组卷:手工输入。以question title来区分试卷问题,以TAGs来区分知识领域和过程组;
- 用户授权:经由订单来实现。用户可以自行下单,管理员可以添加订单。改变订单状态(到“已付款”),即实现课程授权;
遗留的问题
- 新用户注册:邮件系统设置没有搞定,因此用户无法收到确认邮件完成注册;
- 组卷:Question bank + Quiz的组合,不友好。测试了一个Learnpress Export and Import插件,无法使用;
- 测试界面:题干字体太小,比选项的字体小,手机看不方便;
- 测试界面:button字体太小,手机看不方便;
2020/4/2,课程中的视频播放
WordPress自带播放器,直接用一个, 加上url就可以播放mp4视频,见
http://112.126.57.105/courses/maintainpmp/lessons/%e8%af%be%e7%a8%8b%e4%bb%8b%e7%bb%8d/
这种解决方式很简单,要求就是要设定OSS视频文件为公开可读,从而导致他人可以直接连接OSS下载所有文件。
待研究:能否通过Bucket Policy或者是RAM授权之类的设定解决这个问题?
另:今天发现购买的OSS欠费,不知道是因为存储引起的,还是因为流量引起的,也需要研究下计费策略。
2020/4/1
这两天天又花了一点时间,reset了WordPress重新安装了LearnPress, 也尝试了多种不同的插件,比如Elementor, SiteOrigin, 也尝试了WooCommerce,总有这样那样的不爽,后来都删掉了。
现在的这个Theme,感觉比较轻,建菜单也很好看。搭配LearnPress,搭建一个课程网站还是蛮快的,还是有几个Show Stopper级别的问题:
- 存放在SSO里面的视频,如何能够在课程中直接播放,同时又能禁止下载;
-> 下载的问题似乎也不是非常严重,客户如果录屏呢,我们是禁止不了的,或许在原始视频上打上标志更靠谱。接下来要解决直接播放的问题。既然视频连接可以直接在浏览器播放,那么在课程中播放也不应该有太大问题; - 设定付款为PayPal, 这个还不够,至少还应该有信用卡。能加上支付宝/微信,以及银行转账,那就完美了;
- 据说WooCommerce可以解决问题2,问题又来了。WooCommerce有自己的购物车和结账页面,怎么做到与LearnPress连接?
-> LearnPress中有个WooCommerce的Add-On,没有试用的版本,只能购买,不知道这个Add-On的效果。 - 网上看到有很多专门针对WordPress的攻击,要专门研究一下WordPress如何设置来避免这些攻击。
还有一些比较轻微的问题,如果不能解决,也会影响整体体验:
- Question Bank + Quiz这样的组合方式,对大量的测试题目不友好;
-> 目前可以考虑在题号前加前缀。 - 页面工具不好用。用专门的Page Builder插件,既涉及到学习成本,也影响到整个系统的性能;
- Banner占满屏,除Banner之外的其他内容都限制在页宽范围,如何做到?
- PC端有些页面显示侧边栏,很好。如果做到在移动端不显示?
- 跑马灯、mouse hover变色加框之类的效果,要怎么实现?
- 菜单条:访客显示Sign-in/Sign-up,登录后显示个人中心,怎么实现?
- 尝试着做了几个课程,只有结构,没有内容。在课程页面,按钮上的文字太小,在哪里改?
今天暂时就想到这么多。
马马虎虎粗看一眼,整个WordPress+LearnPress效果还不错,特别是有各种各样的Themes and Plugin,实际使用的时候才知道全都是问题,比如Theme可设置元素,比如Plug-in之间的相互关联相互影响。
本来的预期是,WordPress可以帮我们解决掉很多设置一个网站的基本问题,比如用户登录与权限管理,比如网站的框架,比如page builder, 现在看来要用好,还是有很高的学习成本。
可以考虑的处理方案:一是购买商业化的模板,稳定性应该更好一些,同时因为有对应的服务,碰到问题可以很快得到解决;其二是要找个专业的人士来处理系统方面的问题。
WordPress生态下,养了一大堆Theme和Plug-in作者。这些公司需要生存,免费的东西都只能看不能用,而收费的产品也难以保证能达到的预期。
自己租用服务器建立学习系统的思路,是不是不太靠谱?
Leave A Reply
要发表评论,您必须先登录。
2 Comments
测试一下评论的功能,主要看几个要点:
1. 未注册用户能否留下评论;
2. 姓名和电子邮件是必须留下的,那么会不会注册一个新用户;
3. 系统会不会尝试给这个用户发送注册信息;
4. 勾选/不勾选“在此浏览器保存我的名字、电邮和网站”会有什么差异。
重新设置之后,这几个问题:
1. 可以;
2. 不存在了;
3. 不会;
4. 就是字面意思。