【问题标题】:Setting moodle online在线设置moodle
【发布时间】:2012-09-19 20:39:13
【问题描述】:

大家好,我一直在尝试将我的 moodle 放到网上,以便互联网上的电脑可以访问它,但直到现在,一点运气都没有。 (我在 Windows Server 2008 和 IIS 7 上使用 moodle 2.3.2)。

我尝试配置moodle文件config.php,设置指令$CFG -> wwwroot = "my-public-ip/moodle"。然后,当我从服务器访问moodle时,我可以通过“http://my-public-ip/moodle”访问它,当我尝试通过localhost访问时,它会发送一个可以的错误。

但有趣的是,当我尝试从外部电脑访问服务器时。当我键入“http://my-public-ip/moodle”时,它根本无法“看到”我对 config.php 文件所做的配置(它说:此服务器只能通过 localhost/moodle 访问)它看起来像外部电脑要么忽略它,要么搜索另一个配置文件。我不知道到底发生了什么,这很奇怪。

有什么想法吗??天呐!!!

【问题讨论】:

    标签: moodle


    【解决方案1】:

    更改以下文件:

    lib-->setuplib.php

    Redirect ($CFG->wwwroot, get_string('wwwrootmismatch', 'error', $CFG->wwwroot), 3);
    

    为

    Redirect ($CFG->wwwroot, get_string('wwwrootmismatch', 'error', $CFG->wwwroot), 0);
    

    【讨论】:

    • 更改 lib 以实现可配置的东西确实是个坏主意。不知道为什么这个答案被接受,但这不是正确的方法,而且有点冒险。最好避免这种方式,提到的替换工具是这样做的正确方法。
    【解决方案2】:

    我意识到这是一个老问题,但值得指出的是,您可能还需要运行数据库搜索和替换脚本,位于:

    http://my-public-ip/moodle/admin/tool/replace/index.php

    如方法 2 中引用的 here。

    如果您在安装网站后更改网站名称,则必须这样做。如果您已经在“localhost”下使用 Moodle,那么将有许多对存储在数据库中的旧 localhost 地址的引用需要更新为新的基于 IP 的地址。

    【讨论】:

      【解决方案3】:

      可能是因为缺少 http:// 部分?

      $CFG->wwwroot = "my-public-ip/moodle"
      

      应该是

      $CFG->wwwroot = "http://my-public-ip/moodle"
      

      【讨论】:

      • 没有。查看@MartinGreenaway 的回答,他解释了必须做什么。但是,http:// 部分也可能是必不可少的。
      猜你喜欢
      • 2017-01-06
      • 2016-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-16
      • 2017-03-09
      • 1970-01-01
      相关资源
      最近更新 更多