
Eu tenho uma VM no nível gratuito do Oracle Cloud e tenho o IPv4 dedicado. Instalei o MariaDB neste servidor. Quero apontar o nome de domínio (example.com) para essa máquina, para poder acessar o MariaDB com o domínio, exemplo para usar example.com:3306 em vez de xxx.xxx.xxx.xxx:3306 dentro do código PHP?
Como posso fazer isso sem instalar o nginx/apache httpd?
Responder1
Primeiro você faz login em tudo o que lhe dá controle sobre as configurações de example.com. Então você configura seus servidores de nomes corretamente: aqui você pode se inscrever e usar o cloudflare como uma solução fácil e gratuita e usar seus servidores de nomes para o seu domínio (por exemplo, eles podem fornecer fay.ns.cloudflare.com e ara.ns.cloudflare. com). Se você fez isso, é hora de adicionar alguns registros DNS: faça login em sua conta cloudflare e na seção DNS crie um A RECORD (um endereço ipv4) para apontar seu @ (significa exemplo.com sem nenhum subdomínio) para seu xxx. xxx.xxx.xxx. E deve funcionar.
Caso você não queira obter seu próprio domínio e fazer todas essas coisas de servidor de nomes, existe uma solução local: você pode informar à sua máquina de desenvolvimento que example.com deve resolver para xxx.xxx.xxx.xxx. No Linux você faz isso editando o arquivo /etc/hosts e anexando esta linha:
xxx.xxx.xxx.xxx example.com
Mas saiba que a segunda solução só funciona para máquinas que possuem este tipo de configuração e não é global como a anterior.
Em ambos os casos, você não precisa configurar nenhum servidor web. O DNS é independente da web, isso acontece quer exista um servidor web ou não, ou mesmo o endereço pertença a um servidor real ou seja apenas um número aleatório.
No seu caso, o importante é que a porta seja acessível de fora (configurando seu firewall corretamente) e algo esteja escutando nela não apenas localmente (127.0.0.1:3306), mas também em xxx.xxx.xxx.xxx:3306. Normalmente você faz isso ouvindo 0.0.0.0:3306 com 0.0.0.0 como curinga para ouvir todos eles.
Responder2
Um httpd não é necessário para executar ou acessar MySQL ou MariaDB. Se você não deseja rodar um servidor web na mesma máquina, simplesmente não instale-o.
Você precisará configurar o MySQL para escutar na interface externa (configure-o para escutar em 0.0.0.0), o padrão é a interface de loopback. Não se esqueça de definir as permissões corretamente.
Se necessário, abra a porta TCP do banco de dados (neste caso 3306) nos grupos de firewall/segurança e pronto. O ideal é permitir que apenas seus servidores da web se conectem a ele.
Responder3
Se você abrir o MySQL em uma rede externa, precisará ter muito cuidado com a segurança:
- Certifique-se de que o acesso a esse servidor seja limitado, por exemplo, esteja atrás de um firewall da Internet pública
- Se precisar estar na Internet pública, configure certificados TLS e use criptografia TLS ao conectar-se a ele
- Certifique-se de que todas as contas de usuário tenham credenciais adequadas