尝试重新启动Apache,并不能告诉它是否重新启动 – 是否有重新启动的日志,或者如果我input命令行重新启动,我应该期待一个响应(错误信息,确认,状态等)
从来没有做过,不知道发生了什么事。
这正是我正在打字,没有$ /#之前…
命令input:
sudo apache2ctl restart
– 要么 –
apache2ctl restart
CONTEXT:从根目录执行的命令,意思是…“cd /”
结果:似乎没有任何事情发生。
根据您的计算机上Apache和syslog的configuration情况,可能会有所不同,但是在Debian或Ubuntu Apache 2的安装过程中,您可以在/var/log/apache2/error.logfind日志。 如果重新启动,您应该在日志中清楚地看到它。
此外,检查ps的输出,特别是开始时间,你应该能够判断它是否已经重新启动。
最后一件事,如果你试图找出你刚刚运行的命令是成功还是失败了,那么试试echo $? 。 它会打印最后一个命令的返回码。 99%的时间0是你在那里找的。
apache2ctl在失败时应该返回一个非零的状态码。 你可以通过发出你的启动命令来通知失败:
apache2ctl start || echo 'apache2ctl failed'
如果apache2ctl认为它成功,你应该看不到输出。
如果你喜欢更具体的东西(遵循“信任,但是validation”的格言),你可以检查apache是否真的启动,并监听与netstat连接,例如
netstat -anp | egrep -i 'http|apache'
如果你看到类似这样的线条,那么你是金色的:
tcp6 0 0 :::80 :::* LISTEN 1506/apache2 tcp6 0 0 :::443 :::* LISTEN 1506/apache2
或者,如果你不运行IPv6,你会看到更像这样的东西:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2341/apache2 tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 2341/apache2
在任何一种情况下,关键是apache2在众所周知的www端口(80,和可选的443)上监听传入的连接。
Mine在我的apache2ctl restart时在error.log中创build了几个[notice]条目,以“[notice] SIGHUP收到。尝试重新启动”开头,以“Apache(各种模块列表)结束 – 恢复正常操作”
有几个地方你可以看看,如果Apache重启。 第一个系统日志在/ var / log目录下。 第二个Apachelogin到/ var / log / apache2目录