如何在OSX Mountain Lion / Mavericks中启动apache?


Answers:


79

Apache的LaunchDaemon也仍然存在,因此您需要做的就是将其加载:

sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

-w使它永久的,即当你重新启动,它会被重新加载。


这样启动后,如何关闭它?
詹姆斯·麦克马洪

9
@JamesMcMahon:sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
戈登·戴维森

嗯,本地主机上仍在运行某些程序,我以为是Apache,也许我正在运行其他程序。
詹姆斯·麦克马洪

@JamesMcMahon:您可以使用例如sudo lsof -i:80来查看给定端口上正在侦听的进程。从那里开始,以前的答案可能会帮助您找到答案 ...
Gordon Davisson 2012年

35

终端命令

开始:“ sudo apachectl开始”

停止:“ sudo apachectl停止”

重新启动:“ sudo apachectl重新启动”

在启动时启动

(请参阅此主题中标记为答案的答案)


是否有等效的ShutdownItems目录?目前没有OSX在我面前……
Rich Homolka

曾经是/etc/rc.shutdown.local-不知道那是否还在...
slifty

12

sudo apachectl start还启用启动的守护程序。就像一样,它通过修改覆盖了Disabled输入。/System/Library/LaunchDaemons/org.apache.httpd.plist/private/var/db/launchd.db/com.apple.launchd/overrides.plistlaunchctl load -w

为了http://localhost/~username/工作,您必须创建 /etc/apache2/users/username.conf并添加如下<Directory>指令:

<Directory "/Users/username/Sites/">
Options Indexes MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

1
我在这里找到了一个很棒的文章。还介绍了php模块启用。 coolestguyplanettech.com/downtown/…–
彼得·埃里希

8

Slifty和Lauri暗示了一个重要概念,但没有明确地说出来。

“ sudo apachectl start”不仅将启动apache,还将修改/private/var/db/launchd.db/com.apple.launchd/overrides.plist,以便每次重新引导系统时apache都会自动重新启动。

同样,“ sudo apachectl stop”将停止apache并修改上述文件,以便在重新引导系统时不会启动apache。

这似乎是控制服务是否自动启动的最简单方法。


3

对于寻求GUI的用户,Click On Tyler开发了一个控制面板应用程序http://clickontyler.com/blog/2012/02/web-sharing-mountain-lion/

GUI样本


好的小部件..但是,在我的系统中出了点问题,Apache无法启动.. ::(
Dilip Rajkumar,2012年

同样在这里。似乎有点草率的编码-关于.pid文件的旧混淆,我猜... zzz
conny

这很酷..但是过时了,在优胜美地上不起作用。我们如何从设置窗格中删除它?
emotionality

删除:~/Library/PreferencePanes
情绪高涨,2015年

抱歉,该产品不再可用,或者成为您只能下载完整的商业产品的一部分-而不仅仅是首选项面板。还有其他选择吗?
Motti Shneor '16

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.