Mac OS x Restart Apache Web Server

by Vivek Gite on November 27, 2009 · 10 comments

How do I restart Apache web server under Mac OS X operating systems?

The apachectl command act as Apache HTTP Server control interface. It can be used to start, stop, and restart the Apache web server from command line.

Open a terminal and type any one of the following command:

sudo apachectl restart

OR

sudo apachectl -k restart
Fig.01: Restarting Apache under Mac OS X

Fig.01: Restarting Apache under Mac OS X

Task: Stop Apache Web server

sudo  apachectl -k stop

Task: Start Apache Web server

sudo  apachectl -k start

Featured Articles:

Share this with other sys admins!
Facebook it - Tweet it - Print it -

{ 10 comments… read them below or add one }

1 Robert de Bock November 27, 2009

Thanks, but it might be easier this way: Open the “Sharing” preference, (de-)select “Web Sharing”.

Reply

2 Vivek Gite November 27, 2009

I was just wondering if OS X got some sort of service manager. I need to dig it a little more…

thanks for the comment!

Reply

3 Robert de Bock November 27, 2009

The software to start/stop (load/unload) services is called “launchctl”. From the man page:

launchctl interfaces with launchd to load, unload daemons/agents and generally control launchd. launchctl supports taking subcommands on the command line, interactively or even redirected from standard input.
These commands can be stored in $HOME/.launchd.conf or /etc/launchd.conf to be read at the time launchd starts.

Reply

4 Leaman Crews November 27, 2009

Vivek, what does the -k switch do? I couldn’t find it in the man page for apachectl on a Mac OS X system.

Reply

5 Vivek Gite November 27, 2009

@Robert, I will look into it.

@Leaman, the apachectl command works in two modes:
a) Sys v style mode – One line command mode which take args like start, restart, and stop, and translating them into appropriate UNIX signals to httpd.

apachectl start | stop | restart | graceful|graceful-stop

b) Traditional UNIX mode with lots of options for testing and debugging. In this mode it can act as a simple front-end to the httpd command that simply sets necessary environment variables and then invokes httpd, passing through any command line arguments.

apachectl -t
apachectl -k stat | stop
apachectl -d /webroot
....

HTH

Reply

6 Mashin Abad April 20, 2011

it does’mt work for me :(

Reply

7 Sumit July 3, 2011

SUM-IT:~ sumitgupta$ apachectl -k graceful
httpd: Syntax error on line 488 of /private/etc/apache2/httpd.conf: Syntax error on line 8 of /private/etc/apache2/other/+entropy-php.conf: Cannot load /usr/local/php5/libphp5.so into server: dlopen(/usr/local/php5/libphp5.so, 10): Symbol not found: _libiconv\n Referenced from: /usr/local/php5/lib/libintl.8.dylib\n Expected in: /usr/lib/libiconv.2.dylib\n
SUM-IT:~ sumitgupta$

this is the problem i am facing please help…..

Reply

8 javier August 5, 2011

i receive an error when I try to restart apache with: sudo apachectl restart
the error reads: /urs/sbin/apachectL: line 73: unlimit: open files: cannot modify limit: invalid argument

can anyone help! please.

Reply

9 leamanc August 5, 2011

@Javier, I’d say there is an error in your httpd.conf file. Open it up in the plain-text editor of your choice–one that shows line numbers–and look at line 73. There is either a syntax error or an invalid argument for the option contained on that line.

Good luck!

Reply

10 javier August 5, 2011

lemanc,
i went to httpd.conf file and line 73 is ‘LoadModule include_module libexec/apache2/mod_include.so ‘ do you know anything about this kind of issue?
thanks in advanced!

Reply

Leave a Comment

You can use these HTML tags and attributes for your code and commands: <strong> <em> <ol> <li> <u> <ul> <blockquote> <pre> <a href="" title="">
What is 15 + 15 ?
Please leave these two fields as-is:
IMPORTANT! To be able to proceed, you need to solve the simple math so we know that you are a human and not a script.




Previous post:

Next post: