Mac OS x Restart Apache Web Server

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


sudo apachectl -k restart

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

🐧 Please support my work on Patreon or with a donation.
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
CategoryList of Unix and Linux commands
File Managementcat
FirewallAlpine Awall CentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Network Utilitiesdig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg jobs killall kill pidof pstree pwdx time
Searchinggrep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNAlpine CentOS 8 Debian 10 Firewall Ubuntu 20.04
12 comments… add one
  • Robert de Bock Nov 27, 2009 @ 11:59

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

  • 🐧 nixCraft Nov 27, 2009 @ 13:54

    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!

  • Robert de Bock Nov 27, 2009 @ 14:10

    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.

  • Leaman Crews Nov 27, 2009 @ 17:15

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

  • 🐧 nixCraft Nov 27, 2009 @ 18:37

    @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


  • Mashin Abad Apr 20, 2011 @ 7:53

    it does’mt work for me :(

  • Sumit Jul 3, 2011 @ 9:06

    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/ into server: dlopen(/usr/local/php5/, 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…..

  • javier Aug 5, 2011 @ 17:29

    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.

  • leamanc Aug 5, 2011 @ 17:36

    @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!

    • javier Aug 5, 2011 @ 21:08

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

    • Mike Ritter Oct 7, 2012 @ 0:32

      This is not the correct solution. Please see my other reply for the solution.

Leave a Reply

Your email address will not be published. Required fields are marked *

Use HTML <pre>...</pre> for code samples. Problem posting comment? Email me @