Liberando acesso ao Moodle para a rede externa

Publicado por Pedro H em 07/11/2018

[ Hits: 9.172 ]

 


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

Usando um script PHP como inclusão do lado servidor

Exportando lista de MSN

Executar um script remotamente via ssh

Monitorando portas de hosts com PHP e MySQL

Envio de SMS pelo 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