欢迎留言讨论,期待与你共同进步掘金人的第一篇博客 - 掘金 (juejin.cn)
快速开始
在Ubuntu16.04主机上安装HUSTOJ
项目地址:zhblue/hustoj
官方网站:hustoj
主机说明
| 用户名 | 密码 |
|---|---|
| ubuntu | ubuntu |
| root | root |
| judge | judge |
网络配置
ifconfig
cat /etc/network/interfaces
ubuntu@ubuntu:~$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
auto ens33
iface ens33 inet dhcp
ubuntu@ubuntu:~$ ifconfig
ens33 Link encap:Ethernet HWaddr 00:0c:29:be:bc:ac
inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:febe:bcac/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:82 errors:0 dropped:0 overruns:0 frame:0
TX packets:117 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:13775 (13.7 KB) TX bytes:21060 (21.0 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:737 errors:0 dropped:0 overruns:0 frame:0
TX packets:737 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:62712 (62.7 KB) TX bytes:62712 (62.7 KB)
基于Ubuntu16.04安装
首先安装ubuntu16.04(推荐使用,php7速度杠杠的),然后用下面脚本快速安装OJ:
wget https://raw.githubusercontent.com/zhblue/hustoj/master/trunk/install/install-ubuntu16+.sh
sudo bash install-ubuntu16+.sh
安装视频教程
交互设置数据库root账户密码:123456
-- 报错处理
可能会报错不过不影响使用
ln -s /usr/bin/mcs /usr/bin/gmcs
ln -sf /usr/bin/mcs /usr/bin/gmcs
部署完成
用admin作为用户名注册一个用户,自动成为管理员。
IP地址直接访问,admin密码123456
导入题目
测试题目运行状态
配置管理
大部分功能和选项的开关和参数调整都在配置文件中,安装后几个重要配置文件的位置如下:
/home/judge/etc/judge.conf # 判题judged/judge_client
/home/judge/src/web/include/db_info.inc.php # Web
/etc/php5/fpm/php.ini 或 /etc/php7.0/fpm/php.ini 或 /etc/php.ini (in Centos7) # php
/etc/nginx/sites-enabled/default 或 /etc/nginx/nginx.conf (in Centos7) # nginx
1.如果用户量比较大,报50x错误,可能需要修改/etc/nginx/nginx.conf中的设置:
worker_processes 8; #其中数字8可以取CPU核心数的整数倍。
events {
worker_connections 2048;
multi_accept on;
}
2.如果遇到比赛人数多,比赛排名xls文件无法下载,请修改/etc/nginx/sites-enabled/default,在fastcgi_pass一行的后面增加:
fastcgi_buffer_size 128k;
fastcgi_buffers 32 32k;
保存后,重启nginx
sudo service nginx restart
3.配置访问端口
sudo vim /etc/nginx/sites-enabled/default
而后重启nginx
sudo service nginx restart
更新
sudo bash /home/judge/src/install/update-hustoj
在升级过程中,genuine需求配置选项,这里选的是,tc
会替换已有的文件,psh配置数据库文件也会变化,需要修改
sudo vim /home/judge/src/web/include/db_info.inc.php
重启nginx
sudo service nginx restart
升级脚本执行后,可能需要登陆web端管理后台,在web页面执行一次更新数据库。
更多学习
请前往GItHub项目zhblue/hustoj和官方demo进一步了解。