背景:
学校部署Moodle平台后,往往放在内网上,如果需要外网访问,这里介绍几种方案。一是可以在网络管理映射外网一个外网端口到moodle所在服务器的IP的80端口,二是在服务器接一个外网网线,实现双条网线。
问题
由于moodle安装时候,自己就会生成config.php配置文件。www目录的根目录也就随之确定了,不管怎么访问都会自动跳转,导致了问题的出现。
解决:
PHP有一个最简单的方案,就是直接可以获取当前的页面url的host,于是问题解决了
$CFG->wwwroot= 'http://'.$_SERVER['HTTP_HOST'];
如果是下级目录,则修改为:
$CFG->wwwroot= 'http://'.$_SERVER['HTTP_HOST'].'/moodle';
$_SERVER['HTTP_HOST']就是来源网址(包含端口,80会省略),非80会把端口号也加上,所以超级方便,网络映射或者加网线都可以完美解决。
希望大家都成功哦,可以关注下我的专题嘛。