hustoj搭建--常见问题
环境: Centos6.5 apache2+PHP5+MySQL
设置apache服务器网站根路径(设置之后可通过IP访问OJ)
1. 进入目录/etc/httpd/conf下的httpd.conf文件
把其中的Documentroot后面的路径后面加上/JudgeOnline
2. 重启apache2
终端下键入 service httpd restart
3. 终端下 ifconfig,找到本机IP地址只要在局域网内浏览器键入IP,就能进入。
总是处于判题状态
搭建完成之后,登录OJ交题一直是“等待”状态
判题程序judged需要用root账号启动,这时重启服务器或者终端下键入 sudo judged
如果无效,进入/home/judged/etc目录下的judge.conf 将其中的root密码和admin密码改成自己设置的。
修改之后重启服务 键入sudo kill-9 judged 之后再键入sudo judged
修改php.ini文件,提高可上传文件的大小限制
进入/etc目录下的php.ini文件
修改 post_max_size = 128M upload_max_filesize = 128M // 后面的大小可更改
Hustoj的配置文件
hustoj有两个配置文件,互相独立,分别供core和web使用。
core(judged/judge_client)使用的配置文件是judge.conf(判题配置文件),默认位置/home/judge/etc,内容如下
PS:core没有识别引号和注释的能力,所以不要自行增加任何引号或注释,
否则可能影响judged启动,下面的解释仅做阅读,不能放入配置文件。
想要进入修改这两个配置文件需要修改这两个文件所在文件夹的权限
judge.conf sudo chmod -R 755 judge/
db_info.inc.php sudo chmod -R 755 JudgeOnline
judge.conf
OJ_HOST_NAME=127.0.0.1 如果用mysql连接读取数据库,数据库的主机地址
OJ_USER_NAME=root 数据库帐号
OJ_PASSWORD=root 数据库密码
OJ_DB_NAME=jol 数据库名称
OJ_PORT_NUMBER= 数据库端口
OJ_RUNNING= judged会启动judge_client判题,这里规定最多同时运行几个judge_client
OJ_SLEEP_TIME= judged通过轮询数据库发现新任务,轮询间隔的休息时间,单位秒
OJ_TOTAL= 老式并发处理中总的judged数量
OJ_MOD= 老式并发处理中,本judged负责处理solution_id按照TOTAL取模后余数为几的任务。
OJ_JAVA_TIME_BONUS= Java等虚拟机语言获得的额外运行时间。
OJ_JAVA_MEMORY_BONUS= Java等虚拟机语言获得的额外内存。
OJ_SIM_ENABLE= 是否使用sim进行代码相似度的检测
OJ_HTTP_JUDGE= 是否使用HTTP方式连接数据库,如果启用,则前面的HOST_NAME等设置忽略。
OJ_HTTP_BASEURL=http://127.0.0.1/JudgeOnline 使用HTTP方式连接数据库的基础地址,就是OJ的首页地址。
OJ_HTTP_USERNAME=admin 使用HTTP方式所用的用户帐号(HTTP_JUDGE权限),该帐号登录时不能启用VCODE图形验证码,但可以登录成功后启用。
OJ_HTTP_PASSWORD=admin 密码
OJ_OI_MODE= 是否启用OI模式,即无论是否出错都继续判剩余的数据,在ACM比赛中一旦出错就停止运行。
OJ_SHM_RUN= 是否使用/dev/shm的共享内存虚拟磁盘来运行答案,如果启用能提高判题速度,但需要较多内存。
OJ_USE_MAX_TIME= 是否使用所有测试数据中最大的运行时间作为最后运行时间,如果不启用则以所有测试数据的总时间作为超时判断依据。
web端的配置文件db_info.inc.PHP
默认位置:/var/www/html/JudgeOnline/include
db_info.inc.php static $DB_HOST="localhost"; 数据库的服务器地址
static $DB_NAME="jol"; 数据库名
static $DB_USER="root"; 数据库用户名
static $DB_PASS="root"; 数据库密码
// connect db
static $OJ_NAME="HUSTOJ"; OJ的名字,将取代页面标题等位置HUSTOJ字样。
static $OJ_HOME="./"; OJ的首页地址
static $OJ_ADMIN="root@localhost"; 管理员email
static $OJ_DATA="/home/judge/data"; 测试数据所在目录,实际位置。
static $OJ_BBS="discuss";//"bbs" 论坛的形式,discuss为自带的简单论坛,bbs为外挂论坛,参考bbs.php代码。
static $OJ_ONLINE=false; 是否使用在线监控,需要消耗一定的内存和计算,因此如果并发大建议关闭
static $OJ_LANG="en"; 默认的语言,中文为cn
static $OJ_SIM=true; 是否显示相似度检测的结果。
static $OJ_DICT=true; 是否启用在线英字典
static $OJ_LANGMASK=; //1mC 2mCPP 4mPascal 8mJava 16mRuby 32mBash 1008 for security reason to mask all other language 用掩码表示的OJ接受的提交语言,可以被比赛设定覆盖。
static $OJ_EDITE_AREA=true;// 是否启用高亮语法显示的提交界面,可以在线编程,无须IDE。
static $OJ_AUTO_SHARE=false;//true: 自动分享代码,启用的话,做出一道题就可以在该题的Status中看其他人的答案。
static $OJ_CSS="hoj.css"; 默认的css,可以选择dark.css和gcode.css,具有有限的界面制定效果。
static $OJ_SAE=false; //是否是在新浪的云平台运行web部分
static $OJ_VCODE=true; 是否启用图形登录、注册验证码。
static $OJ_APPENDCODE=false; 是否启用自动添加代码,启用的话,提交时会参考$OJ_DATA对应目录里是否有append.c一类的文件,有的话会把其中代码附加到对应语言的答案之后,巧妙使用可以指定main函数而要求学生编写main部分调用的函数。
static $OJ_MEMCACHE=false;是否使用memcache作为页面缓存,如果不启用则用/cache目录
static $OJ_MEMSERVER="127.0.0.1"; memcached的服务器地址
static $OJ_MEMPORT=; memcached的端口
hustoj搭建--常见问题的更多相关文章
- HUSTOJ搭建实录
要做一个MOOC平台,要求有在线编程功能,想偷个懒,于是用了HUSTOJ...... 系统:Ubuntu14.04 Kylin 步骤: 一.搭建服务器和相应环境 apache2: sudo apt-g ...
- 最新的hustoj搭建姿势
试着照某度上的教程搭了一下hustoj,出了一些问题,之前的搭建姿势很多已经不适用了,重新整理一下思路,方法二简单粗暴: 方法一: 首先虚拟机安装了Elementory OS (基于Ubuntu的衍生 ...
- HUSTOJ搭建后为了方便作为Judger调用进行的一些修改操作
这里的操作主要包括: 找到初始的MySQL数据库用户名和密码: 将 csrf 设置为固定值: 取消掉同一用户相邻提交时间间隔需要10秒钟的限制. 内容如下: 系统:ubuntu18.04.2 hust ...
- CAS 5.x搭建常见问题系列(2).PKIX path building failed
错误原因 服务端的证书是不安全的,Cas的客户端在调用时因为安全提醒造成调用失败. CAS的客户端需要导入服务端的证书后,就正常了. 具体操作步骤如下: 1. 首先启动tomcat,看下之前搭建的ca ...
- sonarQube环境搭建--常见问题及解决
环境配置:MySQL Server 5.7 Jdk1.8 1.安装mysql数据库(默认安装一路默认到底,注意不要先新建用户账号) a) Mysql 环境变量配置: b)新增my.ini文件: ...
- CAS 5.x搭建常见问题系列(1).未认证的授权服务
错误内容 错误信息如下: 未认证授权的服务 CAS的服务记录是空的,没有定义服务.希望通过CAS进行认证的应用程序必须在服务记录中明确定义 错误原因 CAS 5.x 默认情况下不支持HTTP的客户端接 ...
- CAS 5.x搭建常见问题系列(3).Failure to find org.apereo.cas:cas-server-support-pm-jdbc:jar:5.1.9
错误内容 cas overlay的pom.xml增加了cas-server-support-pm-jdbc.jary依赖后, 打包(mvn package)出现如下的报错 D:\casoverlay\ ...
- 在线判题系统hustoj的搭建
摘要:ACM/ICPC程序设计竞赛,越来越受到各个高校的重视,是程序设计竞赛中的奥林匹克.Hustoj是搭建在linux系统上的判题系统.能够判断代码的正确性.会及时返回通过或者不通过,如果不通过会返 ...
- 搭建hustoj
环境:centos6.5 + LAMP环境 LAMP环境的搭建可以参考下面这篇文章 http://www.cnblogs.com/yoke/p/7257184.html 搭建完LAMP环境之后可以按照 ...
随机推荐
- 常用DOS命令和Linux命令
DOS命令 1.查询端口占用情况:netstat -aon |findstr "8080"; 查看端口进程号: 2.查看进程号信息: tasklist |findstr &qu ...
- POJ-1258 Agri-Net(最小生成树)
Description Farmer John has been elected mayor of his town! One of his campaign promises was to brin ...
- Dijkstra+优先队列 堆优化
关于堆优化 传统\(Dijkstra\),在选取中转站时,是遍历取当前最小距离节点,但是我们其实可以利用小根堆(STL的priority_queue)优化这个过程,从而大大降低复杂(\(O(V2+E) ...
- 03-树3 Tree Traversals Again (25 分)
An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example ...
- 关于window.onload和body onload冲突的解决办法
在学习用js在 页面中动态显示当前时间 和依次读取公告栏信息的 实验中 发现在将两个页面整合时 window.onload=function (){}和 <body onload="d ...
- JAVA的NIO的新特性和小Demo,进一步了解NIO
1.为什么要用NIO NIO 的创建目的是为了让 Java 程序员可以实现高速 I/O 而无需编写自定义的本机代码.NIO 将最耗时的 I/O 操作(即填充和提取缓冲区)转移回操作系统,因而可以极大地 ...
- 重签名android测试包
我的一个例子:jarsigner -digestalgSHA1 -sigalg MD5withRSA -keystore C:\Users\sunyang\.android\debug.keystor ...
- Go RabbitMQ(四)消息路由
RabbitMQ_Routing 本节内容我们将对发布订阅增加一个特性:订阅子集.比如我们将一些危险的错误消息保存进硬盘中,同时在控制台仍然能够读取所有的消息 Bingings 上一节内容我们将队列跟 ...
- 有关css和js针对不同浏览器兼容的问题
首先谈一下浏览器,虽然现在ie依然是浏览器市场的老大,大约占有67%的份额,但是由于其各方面的欠缺,用户开始选择其他浏览器作为自己浏览网页的主要 工具,比如firefox.theworld.maxth ...
- [转]jQuery ListBox Plugin(ListBox插件)
本文转自:http://www.cnblogs.com/think8848/archive/2011/09/28/2193990.html 转载请注明作者(think8848)和出处(http://t ...