Centos6.x安裝TCExam
公司培訓部最近有線上考試的需求,而目前使用的線上考試的系統沒有自動評分功能,全部的試題需要人工進行批閱,效率十分低下。為解決這個問題,我上網找了好多軟體進行測試,但效果都不是很理想,直到遇到了TCExam這款開源軟體。
TCExam是基於PHP開發的線上考試系統,安裝環境為LAMP。其安裝十分簡單設定也不是很繁鎖。
一、安裝LAMP環境
雖然說tcexam需要的是lamp環境,但是官方文檔中是需要通過yum安裝的,我通過手工編譯安裝lamp環境後,在tcexam安裝過程中遇到很多問題。所以我在這裡使用的是通過yum安裝lamp和其他相關的軟體的。
1、安裝epel-release源
yum install -y epel-release;
2、安裝lamp
yum install -y gd curl ImageMagick texlive zbar mysql-server php httpd php-mysql libdbi-dbd-mysql php-gd php-curl memcached
3、修改apache設定檔
vim /etc/httpd/conf/httpd.conf
修改ServerName
ServerName localhost:80
4、設定php時區
vim /etc/php.ini
修改 date.timezone
date.timezone = "Asia/Shanghai"
5、啟動相關服務
#設定mysql服務chkconfig mysqld onservice mysqld start#設定apache服務chkconfig httpd onservice httpd start#設定memcached服務chkconfig memcached onservice memcached start
二、下載TCExam1、進入網站根目錄:
cd /var/www/html
2、到官網下載安裝包
wget https://github.com/tecnickcom/tcexam/archive/master.zip
3、解壓安裝包
uzip master.zip
4、解壓出來的檔案夾為“tcexam-master”,將tcexam-master目錄下的檔案全部移動到/var/www/html中並刪除tcexam-master目錄
mv ./tcexam-master/* .rm -rf tcexam-master
三、設定mysql
按照官方文檔tcexam的安裝頁面是可以自動建立tcexam資料庫並匯入初始資料的,但從實際的操作的效果來看,這個功能基本上無法完成這個任務。因此我們需要手工建立資料庫並匯入初始資料。
1、設定mysql的root密碼
tcexams要求MySQL的root密碼不可為空,所以先設定mysql的root密碼。
mysqladmin -u root password "newpassword";
”newpassword” 是你指定的mysql的root密碼
2、進行mysql建立資料庫
mysql -uroot -p;#輸入你設定的密碼#建立資料庫create database tcexam;#退出mysqlquit
3、匯入初始化資料1)、進入tcexam安裝頁目錄
cd /var/www/html/install
2)、匯入初始資料
mysql -uroot -p tcexam < mysql_db_structure.sqlmysql -uroot -p tcexam < db_data.sql
單獨執行每一條語句並斷行符號,按提示輸入密碼
四、關閉主機的selinux 並清空iptabels1、修改selinux設定檔
vim /etc/selinux/config#修改SELINUX=enforcingSELINUX=disabled
儲存退出
2、暫時關閉selinx
setenforce 0
3、清空iptables 並儲存
iptables -Fservice iptables save
五、訪問tcexam的安裝頁面
在瀏覽器中輸入下面的地址,其中IP是你伺服器的IP地址
http:\\IP\install\install.php
如果資料庫是在原生話,在頁面中只需要修改下面幾項: db password 裡面填寫mysql的root密碼 將“Drop Existing Database”和”Create New Database“ 後面的複選框去掉勾選。 然後單擊”INSTALL”按鈕完成安裝
六、安全方面的設定
按照官方的文檔,安裝完成後需要進行以下操作,來增強程式的安全性。
1、刪除安裝目錄並刪除根目錄下的TXT檔案
cd /var/www/htmlrm -rf installrm -rf *.TXT
2、設定相關目錄的屬主和許可權
find . -exec chown -R apache:apache {} \;find . -type f -exec chmod 544 {} \;find cache/ -type f -exec chmod 644 {} \;find cache/backup -type f -exec chmod 644 {} \;find cache/lang -type f -exec chmod 544 {} \;find admin/log/ -type f -exec chmod 644 {} \;find public/log/ -type f -exec chmod 644 {} \;find . -type d -exec chmod 755 {} \;
七、tcexam配置1、設定郵件驗證
需要修改shared/config/tce_email_config.php
#管理員的郵件地址 $emailcfg['AdminEmail'] = 'lzl001@163.com'; #smtp伺服器 $emailcfg['Host'] = 'smtp.163.com'; #smtp服務連接埠 $emailcfg['Port'] = 25; (連接埠預設是25) #郵箱的使用者名稱 $emailcfg['Username'] = 'lzl001@163.com'; #郵箱的密碼 $emailcfg['Password'] = '123456'; #是否開啟高度模式 $emailcfg['SMTPDebug'] = false;
2、設定預設登入語言為簡體中文
需要修改shared/config/tce_config.php
/** * 2-letters code for default language. */define ('K_LANGUAGE', 'cn');
3、修改匯出PDF設定並設定中文字型
系統預設的設定匯出的PDF檔案內容為亂碼,因此需要修改shared/config/tce_pdf.php 先上網下載Drod Sans Fallback-PHP字型檔 把壓縮包的三個檔案droidsansfallback.php、droidsansfallback.z以及droidsansfallback.ctg.z 解壓到fonts目錄下
#修改PDF的主標題define ('PDF_HEADER_TITLE', "主標題");#修改PDF的副標題(可以設定三個副標題)define ('PDF_HEADER_STRING', "副標題1\n副標題2\n副標題3");#設定PDF的log,預設的表徵圖檔案放置在images目錄下define ('PDF_HEADER_LOGO', 'logo.png');#設定預設字型define ('PDF_FONT_NAME_MAIN', 'stsongstdlight');define ('PDF_FONT_NAME_DATA', 'stsongstdlight');
4、修改網站的log
預設的表徵圖檔案放在./images目錄下,檔案名稱為logo_tcexam_118x25.png 映像的大小為118*25,格式為png
5、使用者註冊設定
修改./shared/config/tce_user_registration.php檔案
#是否允許使用者自行註冊define ('K_USRREG_ENABLED', true);#是否使用郵箱認證define ('K_USRREG_EMAIL_CONFIRM', false);#預設的使用者組ID#需要先去資料庫查看所需使用者組的IDdefine ('K_USRREG_GROUP', 3);#使用者註冊協議地址define ('K_USRREG_AGREEMENT', '');#接收註冊資訊的管理員郵箱define ('K_USRREG_ADMIN_EMAIL', '');#需要在註冊頁面中顯示的項目,0 禁用,1 選填項,2 必填項/** * Additional fields to display on registration form. * Legal values are: * 0 = disabled field; * 1 = enabled field; * 2 = required field; */$regfields = array( 'user_email' => 0, 'user_regnumber' => 0, 'user_firstname' => 2, 'user_lastname' => 2, 'user_birthdate' => 0, 'user_birthplace' => 0, 'user_ssn' => 0, 'user_groups' => 0, 'user_agreement' => 0);
6、tcexam設定檔說明1)、tcexam主要的設定檔全部放置在./shared/config目錄下,以tce_ 開頭, .php 結尾檔案名稱說明tce_cas.phpCAS認證中心配置tce_config系統通用設定tce_db_config.php資料庫配置tce_email_config.php電子郵件配置tce_general_constants.php系統通用常量配置tce_latex.phpLaTeX公式配置tce_ldap.phpLDAP 配置tce_mime.phpMIME 副檔名關聯tce_paths.php配置系統內的檔案及檔案夾tce_pdf.phpPDF檔案匯出設定tce_radius.phpRADIUS 配置tce_user_registration.php使用者註冊配置2)、系統管理設定檔
這部分設定檔存放位置為 ./admin/config目錄下
檔案名稱說明tce_auth.php管理模組的存取層級配置tce_config.php管理面板通用配置3)、公用地區設定檔檔案名稱說明tce_auth.php公用模組的存取層級配置tce_config.php公用地區驅通用配置八、tcexam的使用1、登入
http://IP 預設的使用者是:admin 密碼是:1234
2、使用
tcexam分為前後台:前台就是進行使用者註冊和進行考試;後台就是系統管理使用者、題庫管理、測試出卷、文字題批閱、成績匯總查詢等。 前台不需要多說,登入後考試即可; 背景主要部分就是出題和產生試卷。由於實現起來不是很難,稍有電腦基礎的使用者測試二遍也就可以掌握80%。所以在這裡我只是講一大致流程
1)、產生模組
可以理解為科目,是數學、語文還是英語,這麼說懂了吧!
2)、產生主題
可以理解為題庫
3)、添加題目
可以理解為題庫裡的各個考題
4)、添加答案
為在題庫裡的考題添加標準答案(文字題無需添加答案)
5)、進行完上述操作後,就可以在測試管理裡建立測試,從題庫裡隨機抽題進行考試了。