初步体验:用扣子生成一个雅思口语练习网页

3.15更新: //3pvtkwzwrm.coze.site coze生产环境的参数是部署时系统自动赋值的,不需要自己填API key之类的参数。重新做了一个在生产环境就跑通了,具体方法是让AI基于前一个应用生成一个详细的提示词包含功能点、技术架构等内容,感觉提示词专业的话对于编码还是有帮助的,但是依然会出现细节上的bug,需要进行两三次修复。功能出了问题好排查,配置或者网络等细节出了问题不是程序员的话真的不太好排查,也许是我对一些技术细节还不够了解。 最近正好考虑雅思,新东方的雅思小程序推出了一个AI练真题的功能,参考这个试了下能否用扣子直接生成一个类似的功能。 功能介绍: 根据选择的题型随机生成题目,点击开始录音可以根据题型限制录音时长。录音结束后进行语音识别,并通过AI对识别结果进行分析,给出评分、改进建议和AI扩写的答案。 首页: 这里题目下方的灰色提示是AI自动补全的功能,prompt并未做要求,同时录音时间的文字提示也是AI补全的,页面也是响应式,交互总体比较友好。我也没有对UI风格做要求,感觉AI味比较浓(非贬义),第一遍生成的字体较小做了一次调整。 评分页: 在扣子上直接部署后可能是api的原因,生成环境语音识别功能没有跑通,但是在测试环境实现了完整的功能。 整个过程大概用了两个小时,修复bug的过程比较顺畅,会进行自测基本功能问题提了都可以修复。但是涉及到接口调用,环境部署等导致的问题时,修复bug的技术要求就直线上升了,需要你能够发现比较具体的问题并准确描述,否则的话只是基于前端的报错,AI可能无法定位到准确问题,对无开发背景的人来说还是有难度。

2026年1月28日 · Xiangtao XIAO

wordpress配置问题记录

Linux基本语法 复制 cp 要复制的文件路径 目标路径 cp -r 递归复制整个目录 删除 rm -f 强制删除 -r 递归删除目录 改名 mv 原文件 新文件名 更改文件权限 chmod 777(完全写入权限) 要更改的目录或文件 vim编辑器显示行号:输入指令:set number 跳转到制定行:输入指令:n(要跳转的行号) WP-Super-Cache问题解决 将插件wp-super-cache中的wp-cache-config.php与advanced-cache.php复制到wp-content目录下。 临时更改wp-content权限为777 在wp-config.php中增加以下内容:1.在require_once(ABSPATH.’wp-settings.php’);前增加define(‘WP_CACHE’, true); 2.增加define(‘WPCACHEHOME’, ‘插件wp-super-cache绝对路径’); 修改完成后应该可以进入设置界面,在专家模式下更新设置如果出现要求更新Mod_write规则则按要求进行更新。 对于采用bitnami的wordpress堆栈环境,由于其对文件访问权限的安全设置较严,安装时同样会弹出以上情况的警告。无需理会,连接到服务器执行以下指令:(事实上应当优先采用这种更改权限的做法,未生效再尝试上方操作) sudo chmod g+w /YOURADRESS/apps/wordpress/htdocs/wp-config.php 之后禁用插件并重新激活即可。完事以后要将文件权限复原,执行: sudo chmod g-w /YOURADRESS/apps/wordpress/htdocs/wp-config.php 更多内容,在bitnami.com官方文档的trouble shooting部分有详细介绍。

2020年10月15日 · Xiangtao XIAO

NameSilo Web hosting 云主机建站服务购买与使用体验

namesilo的域名在众多服务商里价格是比较实惠的,.com域名只要$8.99,近年新推出了web hosting服务,价格也比较实惠,最便宜的一个网站20G存储空间的套餐每月只要$2.39元(年套餐)。最近有一个做网站的需求,腾讯的学生优惠已经用过了,又不想备案,正好找到这个便宜的尝试一下。 购买 namesilo的hosting购买服务在namesilo新版网站,进入 namesilo.com 首页就能看见 总共有3个套餐,可以按年或者按月购买,按年购买会更便宜。购买过程非常简单,选择对应套餐点击Get Started。 然后会让你选择域名,这一步也提供3种选择: 1.如果你没有域名的话,可以直接搜索选择一个可注册的,然后和云主机套餐打包在namesilo购买; 2.如果你在其他注册商处(比如腾讯云等)已经购买了域名,输入你购买的域名进行绑定即可,注意要输入你希望是主网站的域名比如www.test.com,namesilo会自动增加域名解析; 3.你也可以选择将其他注册商处购买的域名转移至namesilo(不过注意如果你是新购买的域名通常有一个期限限制域名转出)。 我选择了绑定我在腾讯云购买的域名,选择好域名后点击continue即跳转到确认订单页面(注意:确认订单页面在旧版网站,新旧网站功能混在一起确实比较容易让人迷惑),不用犹豫点击确认订单,然后在付款页面选择Alipay,输入你的支付宝账号然后扫二维码付款即可。 域名解析 !!!购买完成以后,在新版网站是找不到你购买的host的,这点很让人迷惑,在新版网站,你可以选择点击自己的账户信息来跳转到旧版网站,然后在侧边栏选择hosting manager,即可进入主机管理页面,在这里你会看到自己购买的主机,名称就是你之前绑定的域名。 点击链接图标,就进入了你的主机的cpanel管理面板。第一次登陆要设置账号密码邮箱配置等,cpanel支持中文(在偏好-更改语言处选择语言),可视化界面简单易懂,网上已经有很多介绍。 购买完成后就可以前往控制面板进行相关设置了,namesilo根据你在购买时绑定的域名已经自动为该域名添加了域名解析,包括test.com,www.test.com,ftp.test.com以及mail解析等,如果购买套餐时你选择在namesilo购买一个新域名,那么一切已经就绪,在cpanel面板选择安装wordpress即可开始建站。如果像我一样绑定了其他注册商处的域名,虽然namesilo已经添加了相关解析,但这些解析是基于namesilo自家DNS服务器才会生效的,这里有两种选择: 1.到购买域名的域名注册商处将域名的DNS解析服务器地址改为namesilo的DNS服务器地址使解析生效: NS1.DNSOWL.COM NS2.DNSOWL.COM NS3.DNSOWL.COM 2.如果不希望更换DNS服务商,在cpanel面板的域名Zone找到自动添加的所有域名解析,然后将他们全部复制添加到自己的域名注册商处的域名解析中,同样可以让解析生效。 做完这些,在cpanel面板安装好wordpress,在浏览器输入你的域名就可以看到wordpress主页了! SSL证书实现HTTPS 购买的主机已经添加了自签名的SSL证书,但是自签名证书在用浏览器访问时会报不安全,一个第三方签名还是有必要的,namesilo自家在已购主机管理页面就有SSL证书购买服务,不过要花钱,有很多免费提供签名的第三方机构,我直接申请了腾讯云提供的TrustAsia 1年期免费证书(在云产品-SSL证书处申请即可)。 申请下来后下载证书得到.key及.crt证书文件(host使用的是apache服务器,要选对版本),找到cpanel面板的:安全-SSL/TLS选项,删除已有自签名证书文件,上传自己的证书文件,然后选择[管理SSL主机],选择证书对应的域名,点击按域自动填充,上传的证书会被自动选中填充,点击安装证书即可。 在cpanel面板的:域-域选项找到自己的域名,选择启用Force HTTPS Redirect,至此,网站即可安全的用HTTPS进行访问了。 CloudFlare CDN加速 在cpanel安装好wordpress后,就是进入wordpress后台搭建网站,但是实测在中国境内网页的访问速度很慢,并且容易丢包。为了提高访问速度,需要将网页进行静态缓存以及CDN加速。 类似七牛云等国内免费CDN服务要求你的主域名是备案了的,没有备案要选择海外CDN, CloudFlare 提供个人免费版CDN加速服务,推荐这个 教程,注意登录cloudflare的外国官网,中国网站注册是企业版的,注册完就有客服打电话给你谈业务了…CloudFlare的CDN需要将DNS服务器地址转成他们家的,生效时间大概十分钟不到。 在wordpress安装一个静态缓存插件,比如wp fast cache,在CDN选项选择cloudflare,需要输入API码,然后在cloudflare的Overview的侧边栏点击get your API token,选择global API,点击view,复制API代码到wordpress中即可,一路点击确认,cdn配置就完成了。 配置CDN及静态缓存后,网站的访问速度得到很明显的改善,访问变的更稳定,虽然相较国内的网站速度稍慢,但是对于像个人博客之类的小网站完全可以接受了。 邮箱 namesilo的host已经配置好了邮箱服务,发送邮件没问题,但是我用163发的邮件它却收不到,在wordpress设置中更换邮件地址,发现验证邮件也发不到我的邮箱上。因此使用了第三方的SMTP服务,下载了wp SMTP mail插件,SMTP服务用的是腾讯云的企业邮。 将原本的地址解析中的邮件地址解析删掉,添加腾讯企业邮的地址进去,就可以使用腾讯企业邮箱的服务了,方法很简单,注册一个腾讯企业邮箱账号(免费的),然后按指导设置完成即可。增加一个业务邮箱账号,比如mail@designaxt.com,然后得到对应的邮箱密匙,在wp SMTP mail选择其他SMTP,输入密匙,腾讯企业邮的服务器地址及端口号,保存更改就可以用腾讯的服务发邮件了,其他家应该类似。

2020年5月25日 · Xiangtao XIAO

UEditor部署到个人站点

一、下载UEditor //ueditor.baidu.com/website/download.html 在以上链接下载,选择自己需要的语言版本,我用的是jsp,就下载jsp版本。将下载的压缩包解压,可以直接将解压的文件导入到Eclipse中自己的项目中,导入到文件夹WebContent中即可。 二、配置 将jsp/lib中的jar包全部复制到WEB-INF/lib下 修改输入字符数统计、上限,自定义工具栏可以参考官方说明文档,配置项可在ueditor.config.js中修改。 修改图片上传路径等在官方说明文档中有详细的介绍。 注:这里仅仅是在一个项目中使用UEditor,还用别的使用方法,也可以直接部署到tomcat中。 三、在页面中插入Ueditor编辑器 首先要引用文件 <link rel="stylesheet" type="text/css" href="<%= request.getContextPath() %>/thirdparts/utf8-jsp/themes/default/css/ueditor.change.css"> <script type="text/javascript" charset="utf-8" src="<%= request.getContextPath() %>/thirdparts/utf8-jsp/ueditor.config.js"></script> <script type="text/javascript" charset="utf-8" src="<%= request.getContextPath() %>/thirdparts/utf8-jsp/ueditor.all.min.js"> </script> <script type="text/javascript" charset="utf-8" src="<%= request.getContextPath() %>/thirdparts/utf8-jsp/lang/zh-cn/zh-cn.js"></script> 接着在需要插入编辑器的位置插入以下代码 <textarea id="content" name="content" style="width:100%;height:500px"></textarea> <script type="text/javascript" charset="utf-8"> UE.getEditor('content',{toolbars: [[ 'fullscreen', 'source', '|', 'undo', 'redo', '|','bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc']]}); </script> toolbars控制工具栏显示哪些工具 textarea是显示编辑器的容器,其id与UE.getEditor(‘id’,{})要一致。 不一定要是textarea,div等都可以,可以自己试一试,我没有深入研究,凑合着用了。

2020年5月15日 · Xiangtao XIAO

理解MVC模式

M:Model V:View C:Controller 在JSP开发中,JSP仅负责控制页面的显示内容,Javabean仅负责存储数据,在Javabean中,数据以设计好的格式存储着,这也是为什么他叫模型,JSP可以方便的从Javabean中取得数据进行显示,Servlet则负责从数据库中读取数据,向数据库存储数据,对数据进行逻辑处理,之后将数据存储在javabean中以供显示。 MVC与三层架构:界面、业务逻辑、数据库存取是不一样的。MVC要实现的目标是将软件用户界面和业务逻辑分离以使代码可扩展性、可复用性、可维护性、灵活性加强。 看到有另一种说法: //blog.csdn.net/zuiyingong6567/article/details/80150834 同样是MVC,对于各层的理解有一些不同。尤其是对于数据库的连接,在PPT上看到的是C存取数据库,而网上一些资料显示是M存取数据库,而要求C尽量简单,仅仅负责在V与M间协调,大部分业务逻辑的处理,数据存取都放在Model中进行。

2020年5月15日 · Xiangtao XIAO