Percebi que no meu servidor linux, quando digito apachectl restart, me dá um feedback pouco, mas útil, como restarting
e então [ok]
ou [fail]
no final da linha. Não muito, mas pelo menos eu sei o que está acontecendo e posso verificar os logs.
No meu OS X, não recebo nada. apenas a próxima linha imediatamente:
sh-3.2# /usr/sbin/apachectl stop
sh-3.2# /usr/sbin/apachectl start
sh-3.2#
Como posso ativar esses recursos de 'depuração'?
apache-2.2
mac-osx
mgPePe
fonte
fonte
echo
linha.echo
? Desculpe, eu sou novo por aí e preciso de detalhes: \/usr/sbin/apachectl
.Respostas:
Que tal no script do apachectl wrapper você coloca algo assim no final.
você deve ver algo assim em uma inicialização normal
autenticação de digestão ...
/mlk/apache/pid/httpd.pid substituído - Desligamento impuro da execução anterior do Apache?
Caso contrário, qualquer erro deve, pelo menos em parte, ser mostrado aqui. A frase-chave está oculta acima.
Adicional: / usr / sbin / apachectl pertence à raiz, você deve ser um usuário privilegiado para fazer isso. sudo vi / usr / sbin / apachectl
vá para o final do arquivo e insira-o entre as linhas "esac" e "exit $ ERROR". ie
Observe que isso imprimirá as últimas linhas, independentemente da ação que você executar com o script, pare de iniciar, reinicie. você pode colocá-lo apenas na parte inicial da instrução do caso.
fonte
Eu tenho o mesmo problema no meu mac. Sempre que tento iniciar o apache e nada acontece, eu imediatamente executo esse comando. No meu caso, o problema sempre parece estar nos arquivos de configuração do apache.
fonte
apachectl -t
apachectl
no Mac é um invólucro em torno de algunslaunchctl
comandos (basta olhar para o arquivo). Infelizmente, o launchctl não sai com um código de erro quando algo dá errado na inicializaçãohttpd
, portanto, o script não tem uma maneira fácil de exibir nada, mesmo que tente.Uma verificação básica que você pode executar é verificar a existência dos processos Apache após o
apachectl start
comando.fonte
No macOS com
netstat
comando, exiba toda a conexão de rede. Você pode filtrar apenas as conexões de 'escuta' e ver os servidores http (s).Você pode criar um arquivo bash com este código:
O resultado quando o servidor for parado
sudo apachectl -k stop
será:O resultado quando o servidor estiver em execução
sudo apachectl -k stop
será:Neste exemplo, tenho dois servidores em execução, um com https e outro com http.
fonte