Liberando acesso ao Moodle para a rede externa

Publicado por Pedro H em 07/11/2018

[ Hits: 8.506 ]

 


Liberando acesso ao Moodle para a rede externa



Começamos a utilizar o Moodle como plataforma de treinamentos na empresa em que trabalho, porém sempre utilizamos na rede interna da empresa, ao tentar acessar externamente, ocorria o seguinte erro:

Foi detectado acesso Incorreto. Este servidor pode ser acessado apenas através do endereço "http://192.168.0.15/moodle". Por favor, avise o administrador.
Após vários testes de HTTP, configuração de redirecionamento do firewall, descobri que o problema estava na hora do Moodle devolver a informação para o usuário externo, pois a requisição passava pelo firewall e chegava ao Moodle, mas ele não sabia resolver os IPs externos.

Solução

No arquivo config.php dentro de /var/www/html/moodle eu fiz a seguinte alteração:

Comentei a linha:

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

e inseri a os dados logo abaixo:

$CFG->wwwroot = 'http://'.$_SERVER['SERVER_NAME'].':'.$SERVER['SERVER_PORT'].'/moodle';

Após isto, passou a funcionar normalmente.

Espero que a dica ajude alguém, parece algo simples depois de feito, mas pra mim que hoje não tem muito conhecimento de PHP, foram horas de pesquisa e testes até chegar à solução!

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Exportando lista de MSN

Monitorando portas de hosts com PHP e MySQL

jQuery + PHP = Monitor de status

Executar um script remotamente via ssh

Validar máscara e IP inicial da rede com PHP

  

Comentários
[1] Comentário enviado por quartodazona em 25/05/2021 - 11:28h

Meu caro muito obrigado por sua contribuição pois ela funciona de verdade e serviu para me dar o caminho das pedras. E por conta disso quando busquei uma forma de colocá-lo num acesso externo tive problema, então deixo aqui o complemento de um post que resolve o problema do acesso externo:

O correto para funcionar internamente/externamente seria isso:
$CFG->wwwroot = 'http://'.$_SERVER['SERVER_NAME'].':'.$SERVER['SERVER_PORT'].'';
Mas o Moodle não aceita.

Dessa forma então funciona:

if($_SERVER['SERVER_NAME'] == '192.168.8.152'){
$CFG->wwwroot = 'http://192.168.8.152:90';
}else{
$CFG->wwwroot = 'http://200.222.222.222:90';
}

fonte: https://moodle.org/mod/forum/discuss.php?d=390534



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts