TCExam实战从零跑起来到上线的开源在线考试系统【免费下载链接】tcexamTCExam is a CBA (Computer-Based Assessment) system (e-exam, CBT - Computer Based Testing) for universities, schools and companies, that enables educators and trainers to author, schedule, deliver, and report on surveys, quizzes, tests and exams.项目地址: https://gitcode.com/gh_mirrors/tc/tcexamTCExam 是一款开源的计算机化评估CBA系统面向高校、学校和企业覆盖出题、排期、施考、成绩报告全流程。它的定位很明确把纸质考卷和临时拼凑的表格换成一个浏览器里就能跑、客观题自动批改的考试服务。谁适合用它谁可以先绕开适合你的场景建议先绕开的场景客观题占比高单选、多选、判断、填空、简答评分规则可预设纯主观论述、需要教师逐份人工批阅的卷学校、培训机构、企业内部定期考核与认证考试需要原生 App 或小程序深度集成的产品形态要自动评分、批量导入考生、导出成绩做统计团队里没人能维护一台 PHP 服务器架构上它把三个部分拆在独立目录管理员后台在admin/考生前端在public/公共代码在shared/。后台、前台各自有独立的 Web 入口部署时按目录分别控制访问这一点直接影响你后面的权限配置。三条部署路径容器优先环境要求精确版本PHP 8.2 及以上官方在 8.2 / 8.3 / 8.4 上测试需扩展mysqli或pgsql、gd、intl、bcmath、mbstring、zip、curl、xml、openssl、posix用 Oracle 另需oci8数据库MySQL/MariaDB、PostgreSQL 或 Oracle 三选一Web 服务器推荐 Apache mod_php项目自带.htaccess访问控制规则其他服务器要手动复现Composer 必装——PDF 引擎、邮件库、CAS 库都靠它拉取不装起不来可选能力公式渲染要 LaTeX ImageMagickOMR 扫描卷导入要zbarimg路径一容器试用、验证功能git clone https://gitcode.com/gh_mirrors/tc/tcexam cd tcexam docker compose up --build起来后直接打开http://localhost:8080/。入口脚本会用docker-compose.yml里的数据库配置内置 MariaDB 11自动跑一遍非交互安装不需要浏览器向导配置挂在命名卷里down再up实例还在。默认账号admin/1234首次登录就改掉。路径二裸机或云服务器正式部署composer install make lang第一条是启动硬前提顺带生成 PDF 字体第二条预生成翻译缓存省得首用临时构建。然后三步把 Web 站点根目录指向项目目录让cache/、admin/backup/以及admin/config/、public/config/、shared/config/的父目录可被 Web 用户写入安装器要往里写配置文件打开http://your-domain/install/install.php填数据库类型、主机、端口、用户名和密码密码不能为空按向导完成路径三本地开发走路径二的前两步数据库用本地已有的 MySQL 或 PostgreSQL向导里 db host 填localhost即可。装完后把站点目录换成本地 PHP 8.2 的 docroot行为与生产一致。高频功能走查从建题到出成绩建题库与组卷入口在后台/admin/code/登录的问题和考试两个菜单。先在题目编辑里按科目分组建题设题型、答案和分值再到考试编辑里建考试、抽题、设时限和访问权限。得到一份可发布的考试考生从 public 侧入口作答。考生名单与分组入口是后台用户菜单。用 CSV 导入一次性灌入名单再用分组管理把考生归类。得到按组划分的考生池后面给考试分配权限按组来不用逐个勾人。施考与实时监控入口两处考生在public/code/tce_test_execute.php页面作答考试进行中管理员打开 在线用户。得到一份实时在线清单谁在考、剩余多少时间一目了然异常断线能立刻发现。评分、报告与导出客观题交卷即自动评分不用人工过一遍。考生在public/code/tce_test_results.php查个人成绩管理员侧用 PDF 报告 出正式成绩单用 XML 导出 拿结构化数据灌进教务系统。得到的是可直接归档和二次加工的结果。备份入口是后台的备份模块。题目、考试、用户数据可整体备份恢复时原路导回。进阶配置SMTP、单点登录与报告邮件通知成绩邮件走 SMTP。把shared/config.default/tce_email_config.php拷到shared/config/后改这几项其余保持默认$emailcfg[Mailer] smtp; $emailcfg[Host] smtp.your-email.com; $emailcfg[Port] 465; $emailcfg[SMTPAuth] true; $emailcfg[SMTPSecure] ssl;补上Username/Password即可之后在后台Email results页按考生发成绩邮件。单点登录单位有 CAS 的话改 tce_cas.php把K_CAS_ENABLED设为true填服务端地址。验证通过的用户会自动复制进 TCExam 数据库。LDAP 走同目录下的tce_ldap.php思路相同。PDF 报告与公式PDF 引擎由composer install拉取字体自动就位换字体后跑一次make fonts重新生成。题目里带 LaTeX 公式的话服务器上装好 LaTeX 和 ImageMagick在shared/config/tce_latex.php里对齐可执行文件路径细节看 doc/LATEX.md。排障手记四个高频故障现象排查处置部署后起不来、提示类不存在多半没跑composer install执行该命令确认vendor/目录生成安装向导连不上数据库凭据、端口、防火墙逐项核对确认用户名密码正确密码非空、用户有建库建表权限安装器自己建表题目里的公式显示成源码LaTeX / ImageMagick 没装或路径不对装好两个组件对照tce_latex.php里的路径和实际二进制位置考试高峰页面慢PHP 内存和缓存调高memory_limit启用 opcache再查数据库连接上线清单整个install/目录删掉——生产环境向导不能可访问删掉默认admin/1234账号新建一个 level-10 管理员权限收口文件 644、目录 755cache/和admin/backup/保留给 Web 用户可写备份双保险后台Backup定期导出 数据库mysqldump定时任务留一份异地副本开启 opcache按考试规模调memory_limit盯官方安全公告有更新就跟上收尾TCExam 的能力边界比较清楚题库、考试、报告这条主线走通后它基本是个稳定的托管服务剩下的维护量集中在 PHP 环境和数据库上。上线前把清单里第 1、2 两条做扎实——删安装目录、换掉默认管理员——这两处是后续安全事件最常见的大本营。【免费下载链接】tcexamTCExam is a CBA (Computer-Based Assessment) system (e-exam, CBT - Computer Based Testing) for universities, schools and companies, that enables educators and trainers to author, schedule, deliver, and report on surveys, quizzes, tests and exams.项目地址: https://gitcode.com/gh_mirrors/tc/tcexam创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考