我正在尝试了解终端和服务器。我正在学习一门课程,在本课程中它说明你可以使用以下命令启动和停止服务器apache(在mac上):
sudo apachectl start
但是,当我这样做时,它会返回一条消息,说apache已经在运行。完整的信息:
/System/Library/LaunchDaemons/org.apache.httpd.plist: service already loaded
Apache显然没有运行:
ps aux | grep httpd
不会返回任何活动。
我希望这与我所遵循的课程是为优胜美地而且我正在经营El Capitan这一事实有关。我对这个问题了解不多,我正在努力学习,但如果我甚至无法启动服务器,我甚至无法遵循该课程。
有人可以帮忙吗?
谢谢,
P
编辑---------------------------------------------- -----------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<true/>
<key>Label</key>
<string>org.apache.httpd</string>
<key>EnvironmentVariables</key>
<dict>
<key>XPC_SERVICES_UNAVAILABLE</key>
<string>1</string>
</dict>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/httpd-wrapper</string>
<string>-D</string>
<string>FOREGROUND</string>
</array>
<key>OnDemand</key>
<false/>
</dict>
</plist>
答案 0 :(得分:1)
可能是配置错误。运行以下命令并修复所有错误
sudo apachectl configtest
答案 1 :(得分:0)
尝试
i = (data[3]<<0) | (data[2]<<8) | (data[1]<<16) | (data[0]<<24);
这可能是检查Apache状态的最佳方法。
答案 2 :(得分:0)
你能试试下面的
吗?sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
sudo apachectl stop
sudo apachectl start