在前面的配置中,我们能通过局域网ip地址正常进行访问网站了,但是并不是直接输入ip就可以访问的。譬如我们的局域网ip是 10.0.208.88,我们用浏览器打来这个地址,显示的是apache的介绍页面,提示我们apache2 配置正常。
如果我们要正确访问hustoj,则需要在ip地址后,加入JudgeOnline,即 10.0.208.88/JudgeOnline 。
这是因为在apache2中,设置的默认目录是/var/www/html,我们打开该目录来看一下,就会发现,原来我们的OJ网站,还在html/目录下,因此我们才需要在后面加上文件名。
但是其实我们更希望可以通过ip就直接访问到我们的OJ,不希望加过一个文件目录,尤其是当我们要使用域名的时候,我们当然不希望打开一个域名后,还要再添加目录,我们希望输入服务器ip地址或域名能直接访问OJ。
经过上面的分析,其实很容易就能找到解决问题的办法,只需要将apache的默认目录由 「/var/www/html」 设置成我们实际的目录就可以了,此处应该为 「/var/www/html/JudgeOnline」 。下面介绍设置的方法:
不同版本的apache 具体操作起来有一些不同,但是原则都是一样的,这里只介绍2.4版本的具体操作。在该版本下,修改设置的文件所在目录为 「/etc/apache2/sites-enabled/000-default.conf」。因此我们可以输入以下代码,用管理员权限编辑该文件。
sudo gedit /etc/apache2/sites-enabled/000-default.conf // gedit是使用这种编辑器打开,也可以使用其他编辑器如 vim 等
修改「DocumentRoot」属性,默认是 「/var/www/html」,此处改成我们需要的目录,即「/var/www/html/JudgeOnline」,保存后退出。
重启apache服务。
sudo /etc/init.d/apache2 restart
最后,我们在浏览器中输入ip地址或域名,就能直接访问OJ了。