管理员账户
按照套路,UOJ 安装完成后,注册的第一个账户会被自动设为管理员账户。
当您以管理员账户登录 UOJ 后,您就可以依次点击页面右上角您的用户名
、系统管理
来进入管理界面。
管理员账户有发布公告、新建题目和比赛等权限。但是,管理员并不能参加比赛。
发布公告
UOJ 发布公告的套路比较神奇,请您仔细阅读这一段。
首先,请您将您的公告发布到您的博客当中,然后再这篇博客的地址中(形如.../blog/478
)找到最后的一串数字,记作博客 id。
之后,请您打开管理界面,使用博客 id 添加公告。
您可以置顶公告,需要注意的是,1 表示优先级最低(显示为“三级置顶”),3 表示优先级最高(显示为“一级置顶”)。
全局配置文件
全局配置文件中包含了网站的基础信息。要修改全局配置文件,请先进入 Docker 容器的终端。
sudo docker exec -it uoj /bin/bash
全局配置文件的路径是/var/www/uoj/app/.config.php
,您可能需要用 Vim 编辑该文件。
注意,该文件是隐藏文件,您可能需要通过ls -a
命令才能看到它。
您可以通过 Vim 编辑器直接打开它,运行
vim /var/www/uoj/app/.config.php
即可。 Vim 幸存指南:按i
进入插入模式,然后完全用键盘进行编辑。编辑完成后,按Esc
键返回正常模式,输入:wq
保存退出。
您可以再全局配置文档中修改网站的标题等信息,也可以修改发送邮件的配置。发送邮件的邮箱强烈建议您使用 sina 邮箱。
这个文件大概是这个样子的:
<?php return array ( 'profile' => // 网站相关信息 array ( 'oj-name' => 'Universal Online Judge', // 网站全称 'oj-name-short' => 'UOJ', // 网站简称 'administrator' => 'root', // 管理员 id(仅在关于中显示) 'admin-email' => 'admin@local_uoj.ac', // 管理员邮箱(仅在关于中显示) 'QQ-group' => '', // OJ QQ 交流群(仅在关于中显示) 'ICP-license' => '', // ICP 备案信息 ), 'database' => // 数据库相关(勿动) array ( 'database' => 'app_uoj233', // 数据库名称 'username' => 'root', // 用户名 'password' => 'root', // 密码 'host' => '127.0.0.1', // 数据库主机名 ), 'web' => // 网址相关(勿动) array ( 'domain' => NULL, 'main' => array ( 'protocol' => 'http', 'host' => isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''), 'port' => 80, ), 'blog' => array ( 'protocol' => 'http', 'host' => isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''), 'port' => 80, ), ), 'security' => // 安全相关(勿动),仅为示例 array ( 'user' => array ( 'client_salt' => 'salt', ), 'cookie' => array ( 'checksum_salt' => array ( 0 => 'salt', 1 => 'salt', 2 => 'salt', ), ), ), 'mail' => // 邮件相关(SMTP 协议发送) array ( 'noreply' => // noreply 邮箱(建议使用 sina 邮箱) array ( 'username' => 'noreply@none', 'password' => 'noreply', ), ), 'judger' => // 测评相关(勿动) array ( 'socket' => // 与测评机的 socket 服务器通讯的设置 array ( 'port' => 2333, // 端口 'password' => 'pass', // 认证密码(证明自己 UOJ 服务器),仅为示例 ), ), 'svn' => // svn 相关(勿动) array ( 'our-root' => // 每个题目的 svn 仓库自带的仓库管理员 array ( 'username' => 'our-root', // 管理员用户名 'password' => 'pass', // 密码,仅为示例 ), ), 'switch' => // 一些开关 array ( 'ICP-license' => false, // 是否显示 ICP 备案信息(默认为否) 'web-analytics' => false, // 是否进行网站统计(默认为否,记 uoj.ac 名下,想统计自己的得改代码) 'blog-use-subdomain' => false, // 博客是否使用子域名(默认为否,不建议使用) ), );
LOGO
请注意:由于 UOJ 社区版进行了重大更新,移除了 SVN,这部分文档的内容已经失效。
LOGO 图片位于网站的/picture
目录下,使用 SVN 管理。
请您先阅读《SVN 简易指北》。
首先,需要 checkout UOJ 的 web 目录:
svn checkout svn://<local-uoj-address>/uoj
cd uoj/1/pictures
在 /pictures
目录下替换对应的图片,然后 commit。
svn commit -m "Changed logo" *
接下来请您阅读《题目管理概述》相关内容。