6 # 13.04 e mais antigo
Este é apenas um aviso amigável e não é realmente um problema (como algo que não funciona).
Se você vai para:
/etc/apache2/apache2.conf
e insira:
ServerName localhost
e reinicie o apache digitando no terminal:
sudo systemctl reload apache2
o aviso desaparecerá.
Se você tiver um nome dentro, /etc/hostname
também poderá usá-lo em vez de localhost
.
E usa 127.0.1.1
se estiver dentro do seu /etc/hosts
:
127.0.0.1 localhost
127.0.1.1 myhostname
Método preferido
Solução de problemas do Apache
Se você receber este erro:
apache2: Could not determine the server's fully qualified domain name,
using 127.0.0.1 for ServerName
use um editor de texto como "sudo nano" na linha de comando ou "gksudo gedit" na área de trabalho para criar um novo arquivo,
sudo nano /etc/apache2/conf.d/fqdn
ou
gksu "gedit /etc/apache2/conf.d/fqdn"
então adicione
ServerName localhost
para o arquivo e salve. Tudo isso pode ser feito em um único comando com o seguinte:
echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdn
Mas no Ubuntu 14.04:
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf
sudo a2enconf fqdn
Não esqueça o ".conf" (sem não funcionará).
ServerName localhost
nele/etc/apache2/conf.d/
não existe após a minha instalaçãolamp-server^
no 14.04sudo a2enconf fqdn
que tecnicamente seja o mesmo.13.10 ou mais recente
A partir do Apache 2.4 - que está disponível por padrão a partir da 13.10 - você não pode usar o método para adicionar um arquivo de configuração no
conf.d
diretório.O Apache não usa mais o
conf.d
diretório. Todos os arquivos de configuração são armazenados no/etc/apache2/conf-available
diretório e todos os arquivos de configuração agora devem ter uma.conf
extensão.Para resolver esta mensagem no Apache 2.4, precisamos criar um arquivo de configuração dentro do diretório conf-available. Por exemplo
servername.conf
.E dentro disso, só precisamos adicionar uma linha
Você pode combinar os dois comandos anteriores em um com:
Se você deseja usar um nome de domínio ou qualquer outro nome, dependendo do requisito, basta substituir o
localhost
que você precisar. Em seguida, você precisa habilitar essa configuração. Para isso, você precisa executar o seguinte comando:a2enconf
é um comando para ativar um arquivo de configuração no Apaches 2.4. Observe também queservername
o comando acima é do nome do arquivo de configuraçãoservername.conf
. Se o seu arquivo de configuração fossengenericserver.conf
, você teria que escreversudo a2enconf ngenericserver
.Após isso, recarregue o servidor e a mensagem acima não causará mais problemas.
ou
Agora, depois disso, você verá que a mensagem não será mostrada novamente e o problema será corrigido.
fonte
O Apache2 também pode obter o FQDN de um nome de host do sistema configurado corretamente, em vez de codificado no arquivo de configuração do apache. A codificação codificada também causará confusão se o nome do host for alterado. Na verdade, você não precisa de
ServerName
diretivashttpd.conf
nem de arquivos de configuração do apache.Coloque o seguinte em
/etc/hosts
:onde
hostname.domainname.com
está o FQDN da sua máquina.Juntamente com um nome de host configurado corretamente em
/etc/hostname/
ou comhostnamectl
, isso também ajudará outros serviços em sua máquina a serem executados corretamente (por exemplo, o prompt de login, exibido emThis is hostname.domainname.com
vez deThis is hostname.unknown_domain
).fonte
[warn] RSA server certificate CommonName (CN) <fqdn> does NOT match server name!?
hostname localhost
suposto sermyubuntuservername localhost
? Ou a string literalhostname localhost
? Você não era claro em sua resposta127.0.0.1
.Abra o
/etc/apache2/httpd.conf
arquivo:Por padrão, ele ficaria em branco. Basta adicionar a seguinte linha:
Salve o arquivo e saia
Reinicie o servidor
[1] Inicie o editor padrão, consulte
sudo update-alternatives --config editor
fonte
Na nova versão do apache2, você apenas segue o comando como este:
Adicione o seguinte final de arquivo da nova linha:
Em seguida, reinicie o apache2:
Está feito.
fonte
Acho que é um pouco melhor criar um novo arquivo
/etc/conf.d
para modificar umapache2.conf
ou outrohttpd.conf
.É uma preferência pessoal que mantém minhas alterações de configuração separadas do pacote de distribuição. Portanto, as atualizações são menos complicadas.
Eu crio o arquivo
/etc/apache2/conf.d/AAserverName
e ele contém apenas:As outras sugestões certamente funcionam também.
fonte
No Ubuntu 16.04:
fonte
Adicionar, acrescentar
ServerName localhost
Para
Não é um erro. É apenas um lembrete de amigo
fonte
A especificação
ServerName localhost
de seus arquivos de configuração fora das seções do host virtual é a maneira de fazer isso.Algumas outras respostas sugerem que você deve modificar
/etc/apache2/httpd.conf
. Este arquivo é substituído quando o apache é atualizado do apt. Para a configuração do Apache que você não deseja sobrescrever, crie um novo arquivo. Aqui está o "caminho do Debian" para fazer essa mudança de configuração:Isso é basicamente o mesmo que a resposta de Stark, mas de forma fácil de copiar e colar o script. Originalmente, eu postei isso em uma pergunta marcada como duplicada: https://askubuntu.com/a/432408
fonte
No Ubuntu 16.04 :
Adicione
ServerName localhost
ao arquivohttpd.conf
usando o seguinte comando.Em seguida, inclua esta linha
Include httpd.conf
no final deste arquivoVerifique se há erros de sintaxe novamente
Agora você deve obter
Agora você pode reiniciar o servidor normalmente, recarregando a configuração
ou mate o processo e comece de novo
fonte
No Ubuntu 11.10, eu vi essa mensagem, juntamente com uma inicialização travada, porque meu disco estava cheio. Um dos arquivos de log ficou desonesto . Provavelmente não havia realmente um problema com o Apache, mas essa mensagem foi a última pista dada antes da inicialização do sistema.
Para corrigir o problema, tive que inicializar no modo de recuperação e remover o arquivo de log rebelde.
fonte
Se você estiver usando o bash e quiser dependências mínimas (e apenas desejar uma linha para o script do ponto de entrada, se estiver usando o Docker como eu), essas duas opções deverão funcionar.
Se você deseja localhost:
echo "ServerName localhost" >> /etc/apache2/apache2.conf
Se você deseja o nome do host existente:
echo "ServerName $(cat /etc/hostname)" >> /etc/apache2/apache2.conf
Isso usa os operadores de redirecionamento do bash para anexar a sequência ao final do arquivo. O Eco insere automaticamente a nova linha, para que você esteja pronto.
fonte
Execute o seguinte comando:
para determinar o caminho para seu
httpd.conf
arquivo de configuração, edite esse arquivo e remova o comentário / modifique a linha que especifica o valor daServerName
opção, por exemploPara o servidor web, use o nome DNS registrado (por exemplo
example.com
).fonte
No Ubuntu 16.04 :
Adicione
ServerName localhost
ao arquivohttpd.conf
usando o seguinte comando.Em seguida, inclua esta linha
Include httpd.conf
no final deste arquivoVerifique se há erros de sintaxe novamente
Agora você deve obter
Agora você pode reiniciar o servidor normalmente, recarregando o serviço sudo de configuração apache2 restart
fonte