红旅在线语料库网站 开发笔记
桂林红色旅游资源在线语料库网站 (Guilin Red Culture Corpus)提供双语文本检索和分享功能。供英语、翻译相关专业的爱好者,学生和老师学习使用。
该网站是对BiCorpus开源项目的二次开发(已获得原作者授权)。
项目仓库:RedCorpus
原项目仓库:BiCorpus
plaintalks论坛帖子:BiCorpus是什么?
演示视频
缘起
前年,我(被老师推荐去)参与了英语专业那边的一个大创,是做一个红色旅游题材的双语语料库。英语那边的老师说要做一个类似 BiCorpus 的网站。
后来回去研究,确认了自己(太菜)搞不定。无意中发现 BiCorpus 的网站正是韩老师的开源项目,就用邮件询问了韩老师能不能二次开发用于自己的项目,韩老师答应了。于是就开始了基于 BiCorpus 开源项目的二次开发之旅。
网站构思
首先是进行网站构思,因为我的项目用不上 BiCorpus 的所有功能,就选取保留了部分功能,同时新增了许多新功能。所以其实我并不需要搞懂整个项目,只需要研究自己所需要改的部分就行
我在开源项目的基础上,修改并简化了网站的部分布局以使得用户能够更好的进行相关操作;同时改进网站的功能。
原有的开源项目并没有注册功能,用户名和密码需要管理员提供,操作不便。便在此基础上添加了注册功能,同时实现了用户名和密码检测功能(用户名少于6位,用户名与其他已注册用户重复,密码复杂性太低都无法成功注册);
在上传语料的页面时加强了提示;
添加了网页信息页,声明网站的开发者和源代码作者信息。
设计开发(主要功能的修改)
-
用户名和密码检测功能(用户名少于6位,用户名与其他已注册用户重复,密码复杂性太低都无法成功注册)
用正则表达式实现,不满足条件就提示。
下面为部分代码 -
注册功能(新增普通用户注册页,并新增用户名和密码检测功能)
其实就是用原项目的 team.php 和 usercreate.php修改得来的。
新弄了个普通用户注册页面regist.php来注册普通用户
大致思路是
先复制 team.php 的新增用户的代码
去掉regist.php访问的限制(为了让未注册的游客也可以访问)
修改或去掉usercreate.php新增用户的限制(为了让未注册的游客也可以注册用户)
从而让任何人都可以访问普通用户注册页,进行注册。
regist.php
删去60多行那边的 if($user_type ==1 ) 判断,**但一定保留其中的内容**
修改90多行那边的用户类型选择,因为普通用户注册界面只能注册普通用户
usercreate.php
修改(其实不太好改)或删去7行左右的整个判断语句的代码
if($user_type != 1)
{
header("Location: index.php");
}
-
上传语料(加强提示)
这个忘了当时咋弄的了,就不说了。 -
信息说明(声明网站的开发者和源代码作者信息)
这个没啥好说的,就照着原项目的 关于页 的风格写的。 -
手机端
本来想改的,就是改成和电脑端一致,有注册、登录、下载、用户之类的功能,但是太菜没改出来。
部署网站
(大创项目能报销云服务器和域名费用的,所以没有太多纠结)
经过小组成员的搜索资料与讨论,确定网站的服务器选择了腾讯云的轻量应用服务器。腾讯云是中国最大的几家云服务器厂商之一,其为客户提供性能强大、安全、稳定的云产品。接着,使用phpstudy-linux面板(小皮面板)的服务器运维管理面板来进行网站的部署。最终得以在网络上访问和使用该网站。
因为一开始就跟着老师的教程用的window系统的phpstudy部署项目,所以服务器的Linux系统上就也使用phpstudy-linux面板来部署(当然用宝塔也是可以的)。window和linux部署还是有稍微的不同的,不过可以查阅资料自学来解决,难度不大。
2023.05.10 强烈建议不要使用phpstudy-linux!!!这个软件一年多没更新了,官网和网上资料太少了。我的网站被攻击挖矿了,我都不知道该怎么修复(有没有大佬指导下)。
之前路径依赖就一直用phpstudy,还是改宝塔吧。
之后申请了一个域名,并连接上服务器的IP地址(不得不说域名备份是真的麻烦,搞了我近一个月)。
最后的运行效果
功能展示(因为太长了就在这里讲)
1. 用户注册功能
2. 用户登录功能
3. 用户上传语料功能
4. 管理员审核语料功能