升级HUSTOJ

简单说就是

检出最新web,复制原upload目录到新目录,测试后切换。

检出最新core,./make.sh。

管理员登陆后台,更新数据库。

以前升级hustoj可以用update-hustoj命令快速完成,自从googlecode光荣的进入被墙的黑名单后,很多用户长时间没有做过升级了。

现在的最新代码放在github(愿习大大保佑github不封,保佑台湾是中国不可分割的一部分),因此升级需要从github取得最新源码。

如果你是用apache的,老脚本安装的。

 sudo svn checkout https://github.com/zhblue/hustoj/trunk/trunk/web /var/www/new/

sudo cp -a /var/www/JudgeOnline/include/db_info.inc.php  /var/www/new/include/

到这里找到函数pdo_query
https://github.com/zhblue/hustoj/blob/master/trunk/web/include/db_info.inc.php
把它添加到/var/www/new/include/db_info.inc.php中

sudo cp -a /var/www/JudgeOnline/upload  /var/www/new/

sudo svn checkout https://github.com/zhblue/hustoj/trunk/trunk/core core

cd core

sudo pkill -9 judged

sudo ./make.sh

sudo judged

访问http://原OJ地址/new

登陆,后台,更新数据库。

测试无误后

sudo mv /var/www/JudgeOnline /var/www/oldOJ

sudo mv /var/www/new /var/www/JudgeOnline

如果你是用nginx,新脚本安装的

sudo su
cd /home/judge/src
svn up .
cd core
pkill -9 judged
./make.sh
judged

 

 

……待续

 

 

 

升级HUSTOJ》有18个想法

  1. 机子是Ubuntu Server 14.04 LTS ,安装了hustoj后
    将db_info.inc.php中OJ_LANGMASK赋为0
    提交python代码后评测a+b problem发现Wrong Answer,测试运行结果是没有输出
    不知道应该怎样才能评测python代码,求教。

    1. Python需要一些很特别的环境变量,具体我也没有仔细去检查过。
      解决办法就是不要用/etc/init.d/的脚本去启动judged,通过终端登录的普通账号sudo后执行。

  2. 谢谢,已经完成以下步骤:
    sudo svn checkout https://github.com/zhblue/hustoj/trunk/trunk/web /var/www/JudgeOnline/new/

    sudo cp -a /var/www/JudgeOnline/include/db_info.inc.php /var/www/JudgeOnline/new/include/

    sudo cp -a /var/www/JudgeOnline/upload /var/www/JudgeOnline/new/

    sudo svn checkout https://github.com/zhblue/hustoj/trunk/core core

    cd core

    sudo ./make.sh

    但访问http://原OJ地址/new时出错:
    Not Found

    The requested URL /new/ was not found on this server.
    Apache/2.2.14 (Ubuntu) Server at 192.168.1.103 Port 80

  3. 已经可以在new文件夹下登陆了。
    现在想请教如何配置apache,以便于直接跳过index.html,直接访问judgonline下的index.php,因为我实在是找不到配置apache的httpd.conf文件。
    谢谢了。

发表评论