Eu tenho um domínio - example.com
.
Abaixo estão meus registros de DNS .
example.com A IP address
www.example.com A IP address
Aqui está minha configuração de host virtual Apache .
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot /var/www/public_html/www.example.com
</VirtualHost>
Agora, quando digito example.com
(sem www
parte) no meu navegador, obtenho a página padrão do Apache , não o arquivo DocumentRoot
. Quando adiciono www
ao meu domínio está tudo OK.
Agora a questão é como configurar isso para que ambos os domínios www.example.com
e example.com
sirvam o mesmo arquivo da raiz do documento? Devo lidar com isso no nível do DNS ou configurar o servidor da Web de alguma forma? Eu sou noob em tudo isso, então a pergunta provavelmente é estúpida.
Você deve adicionar um ServerAlias - modifique seu VirtualHost para ficar assim:
Você também pode ter todos os subdomínios redirecionados para sua raiz
Como ceejayoz diz em seu comentário , você precisa de um
ServerAlias
Se você tem o
ServerName
ou oServerAlias
comowww
é realmente uma questão de preferência. Pode fazer diferença se você aderir à crença no-www ou sim-www , como se estivesse usando aUseCanonicalName
diretiva, você pode encontrar o Apache redirecionando seus usuários para algum lugar ligeiramente inesperado.Além disso, como ceejayoz mencionou, você deseja escolher um único acampamento (www.example.com ou apenas naked example.com) e ficar com ele. Você realmente não quer servir o mesmo conteúdo em ambas as variações - o alias'd deve realmente redirecionar para o canônico. Existem milhares de sites por aí que ensinam como configurar isso com
mod_rewrite
.Para Nginx:
Para Apache Exemplo:
Reinicie o serviço após as alterações:
ao lado de sua pergunta apache:
www.example.com deve ser um CNAME para example.com. Um registro A é suficiente.