NOJ's another online judge platform, stands for NJUPT Online Judge. It's written in PHP, GO, Python and other function-supporting languages and supports both online judges and virtual judges, we called it mixed judge.
John Zhang Leader |
David Diao Deaputy |
Cone Pi BackEnd |
X3ZvaWQ BackEnd |
Alice Design |
goufaan FrontEnd |
ChenKS12138 FrontEnd |
---|---|---|---|---|---|---|
Rp12138 BackEnd |
CentOS will be recommended for hosting NOJ, but all major operating systems are theoretically supported.
Till now, NOJ have been successfully deployed to the following systems:
Here is detailed step about deploying NOJ:
You need to have a server and installed the following:
Clone NOJ to your website folder;
cd /path-to-noj/
git clone https://github.com/ZsgsDesign/NOJ ./
Change your website root to public
folder and then, if there is a open_basedir
restriction, remove it;
Now run the following commands at the root folder of NOJ;
composer install
Notice: you may find this step(or others) fails with message like "func() has been disabled for security reasons", it means you need to remove restrictions on those functions, basically Laravel and Composer require
proc_open()
,popen()
andproc_get_status()
to work properly.
chmod -R 775 storage/
chmod -R 775 bootstrap/
chmod -R 775 app/Http/Controllers/VirtualCrawler/
chmod -R 775 app/Http/Controllers/VirtualJudge/
.env
just like the .env.example
, you simply need to type the following codes;cp .env.example .env
vim .env
After editing .env
, use this to generate a new key:
php artisan key:generate
php artisan migrate
crontab -e
* * * * * php /path-to-noj/artisan schedule:run
php artisan queue:work --queue=noj,codeforces,contesthunter,poj,vijos,pta,uva,hdu,uvalive
See composer.json
or Dependency List for more info.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。