无法从其他设备访问Moodle(用PHP编写的系统)

时间:2019-03-05 20:31:07

标签: php apache moodle

首次安装Moodle并使用WAMP在Windows 10上本地安装Moodle。我对Apache和服务器的了解非常有限。 安装成功完成,在本地主机上一切正常,但是当我尝试从其他设备(例如使用chrome的另一台笔记本电脑)访问它时,我将被重定向到“ http://localhost/moodle”,并收到消息“此站点可以”无法访问”,尽管在更改其别名文件后我可以访问“ MyphpAdmen”页面。 我知道编码的赌注,所以我为Moodle创建了一个别名文件,从Myphpadmin的别名文件中复制了相同的代码,并进行了一些更改,如下所示

vowels = set('aeiou')

def find_first_vowel(word):
    for index, letter in enumerate(word):
        if letter in vowels:
            return index
    return index  # Returns last index if no vowels.  You could also return None, or raise an error

它没有用,任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

请前往 XAMPP-Cotroll 并打开 Apache->Config->httpd.conf 并添加

<IfModule mpm_winnt_module>
   ThreadStackSize 8888888
</IfModule>

到最后

Reference

答案 1 :(得分:0)

如果您希望能够将页面提供给所有IP地址。您可以删除这2行。

Deny from all
Allow from localhost ::1 127.0.0.1

或者,如果您想要更高的安全性,则只能允许一定范围的ip

Order Allow,Deny
Deny from all
Allow from 127.0.0.1 ::1
Allow from localhost
Allow from 192.168

成为网络IP的前两个括号192.168

参考:https://httpd.apache.org/docs/2.4/mod/mod_access_compat.html#allow

请记住重新启动apache以应用更改。

答案 2 :(得分:0)

这根本不是许可问题。我注意到,当我从其他设备键入Moodle服务器(http://1.1.1.1/moodle)的地址时,我将被重定向到“ http://localhost/moodle”,要解决此问题,我只需要在Moodle的配置中编辑一行.php文件如下:

$CFG->wwwroot = 'http://localhost/moodle' ;
  

对此

$CFG->wwwroot = 'http://1.1.1.1/moodle';

将1.1.1.1更改为服务器的IP

此解决方案的来源:Moodle in English

小调整: 您可能会在具有不同IP范围的不同工作站上使用服务器,在这种情况下,每次更改服务器IP时都必须更新配置文件,因此我编写了以下代码来自动执行更新:

$host= gethostname();
$MyIp= gethostbyname($host);
$CFG->wwwroot = 'http://'.$MyIp.'/moodle';

希望它会有所帮助。谢谢!