Apache2 não está rodando no Ubuntu Server

0

O Apache estava funcionando bem no meu servidor até que comecei a usar o gitlab para gerenciar meus arquivos. Eu tentei reiniciar o apache e estou recebendo o seguinte erro

(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.

Eu verifiquei meus registros e este é o erro que vejo

[Thu Jul 23 17:00:26.511870 2015] [core:warn] [pid 32588] AH00111:
Config variable ${APACHE_LOCK_DIR} is not defined [Thu Jul 23
17:00:26.512033 2015] [core:warn] [pid 32588] AH00111: Config variable
${APACHE_PID_FILE} is not defined  [Thu Jul 23 17:00:26.512057 2015]
[core:warn] [pid 32588] AH00111: Config variable ${APACHE_RUN_USER} is
not defined  [Thu Jul 23 17:00:26.512068 2015] [core:warn] [pid 32588]
AH00111: Config variable ${APACHE_RUN_GROUP} is not defined [Thu Jul
23 17:00:26.512108 2015] [core:warn] [pid 32588] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined [Thu Jul 23 17:00:26.516040
2015] [core:warn] [pid 32588:tid 140305255098240] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined [Thu Jul 23 17:00:26.516255
2015] [core:warn] [pid 32588:tid 140305255098240] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined [Thu Jul 23 17:00:26.516283
2015] [core:warn] [pid 32588:tid 140305255098240] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined AH00526: Syntax error on
line 74 of /etc/apache2/apache2.conf: Invalid Mutex directory in
argument file:${APACHE_LOCK_DIR}

Por favor ajude. Eu estive preso nisso por dias.

    
por mls 24.07.2015 / 02:05

2 respostas

1

Esses erros estão dizendo:

  • já existe um servidor da web em execução na porta 80, por isso não é possível iniciar outro
  • O Apache não pode encontrar seus arquivos PID ou de bloqueio, porque está faltando alguma configuração e não sabe onde procurar

O que eu acho que está acontecendo:

  • O outro servidor da Web já em execução na porta 80 é o próprio Apache . A razão pela qual ele não pode reconhecer a si mesmo é que ele não pode encontrar seu arquivo PID, portanto, não é possível dizer que o Apache já está em execução.

Para que um serviço possa reiniciar ou parar com scripts, ele precisa manter um registro em algum lugar do processo em que está sendo executado. Isso é armazenado em um arquivo PID. O arquivo PID informa ao script de reinicialização / parada em que processo o serviço já está sendo executado, permitindo que ele seja interrompido. Sem ele, o script de reinicialização / parada nem sabe que o serviço já está em execução, e muito menos em qual processo está sendo executado.

Você precisa verificar seu diretório de configuração do Apache, pois algo pode estar faltando ou corrompido. Se você não encontrar a causa e estiver desesperado, mantenha um registro de todas as personalizações feitas na configuração do Apache, limpe e reinstale o Apache e restaure suas personalizações manualmente.

É possível que isso tenha sido causado pelo gitlab? É possível embora não seja certo. Alguns softwares gostam de adicionar arquivos à configuração do Apache, por exemplo, /etc/apache2/conf.d/ . Verifique o diretório para qualquer coisa que pareça ter sido adicionada pelo gitlab ou outro software de terceiros.

    
por thomasrutter 24.07.2015 / 03:01
0

Todas essas variáveis estão definidas em /etc/apache2/envvars no meu servidor. Verifique a existência desse arquivo e que ele está configurado corretamente. Eu tive que fazer algumas pequenas alterações, eu acho, mas praticamente usá-lo como baixado.

    
por Organic Marble 24.07.2015 / 02:12