You can use any one of the following method to restart / start / stop your Apache (httpd) sever on Ubuntu:
- systemctl command – Only works on systemd based Ubuntu like version 16.04 LTS and above.
- /etc/init.d/apache2 – A sys v init style script to start / stop / restart the Apache2 service under Debian or Ubuntu Linux.
- service command – This command work in most Linux distributions including Debian and Ubuntu.
- upstart command – Only works on certain version of Ubuntu.
- apache2ctl command – This method should work on all Linux and Unix like operating systems.
Method #1: systemctl command examples
To start Apache 2 on Ubuntu Linux LTS 16.04 LTS or the latest systemd based Ubuntu Linux, type:
$ sudo systemctl start apache2.service
To stop Apache 2 on Ubuntu Linux LTS 16.04 LTS or the latest systemd based Ubuntu Linux, type:
$ sudo systemctl stop apache2.service
To restart Apache 2 on Ubuntu Linux LTS 16.04 LTS or the latest systemd based Ubuntu Linux, type:
$ sudo systemctl restart apache2.service
To status of start/restart/stop operation, enter:
$ journalctl -u apache2
To find out whether Apache 2 running or not, enter:
$ sudo systemctl status apache2.service
Sample session:
Method #2: /etc/init.d/apache2 command examples
You need to login as root user or use the sudo command to control Apache web-server.
Task: Start Apache 2 Server
# /etc/init.d/apache2 start
or
$ sudo /etc/init.d/apache2 start
Task: Restart Apache 2 Server
# /etc/init.d/apache2 restart
or
$ sudo /etc/init.d/apache2 restart
Task: Stop Apache 2 Server
# /etc/init.d/apache2 stop
or
$ sudo /etc/init.d/apache2 stop
Method #3: service command examples
To restart Apache 2, enter:
$ sudo service apache2 restart
To stop Apache 2, enter:
$ sudo service apache2 stop
To start Apache 2, enter:
$ sudo service apache2 start
To gracefully reload Apache 2, enter:
$ sudo service apache2 reload
Method #4: upstart command examples
The following commands only works with certian version of Ubuntu such as Ubuntu Linux LTS 12.04 and 14.04. To start Apache 2 on Ubuntu, run:
$ sudo start apache2
To stop Apache 2 on Ubuntu, run:
$ sudo stop apache2
To restart Apache 2 on Ubuntu, run:
$ sudo restart apache2
To gracefully reload Apache 2 on Ubuntu, run:
$ sudo restart apache2
Method #5: apache2ctl command examples
apache2ctl is Apache HTTP server control interface command, which can be used to stop or start web server under any Linux distribution or UNIX.
To start Apache 2 on Ubuntu, type:
$ sudo apache2ctl start
To stop Apache 2 on Ubuntu, type:
$ sudo apache2ctl stop
To restart Apache 2 on Ubuntu, type:
$ sudo apache2ctl restart
To gracefully reload Apache 2 on Ubuntu, type:
$ sudo apache2ctl graceful
Edit ~/.bash_profile and add:
alias apache='sudo /etc/init.d/apache2'
Then it’s just apache start, apache restart, etc.
Thanks for the tip. It worked like a charm.
thanks man
These cmd line works great!!!!
Here is what works for me:
/etc/rc.d/init.d/httpd (space) start
or
/etc/rc.d/init.d/httpd (space) stop
nice tutorials,
is there a way to run the apache server as services just like in xampp?
Thanks,
man
wohooooooo,,,, good tutorial ,,, 4 thumbs ^_^
it s not workin for me….
the result is
sudo: /etc/init.d/apache2 commad not found
pls help me guys
sudo /etc/init.d/apache2 do not put that column after sudo
i has stop my apache server, but another connections still establish
unix 3 [ ] STREAM CONNECTED 14940 /tmp/orbit-username/
I’m from Brazil, and your tip helped me a lot, thanks!
sudo service apache2 restart
Thanks mate! nice and easy ( I like the easy ones!)
awesome site………
Thanks for the help.
the amount of times i forget this. sheesh. thanks gzip
Hi! this tutorial is great. things have been ok but mine didnt work at the configuration stage. i restart the server but this d response:
Restarting web server apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
… waiting apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
help me pls
Your can also use this command
sudo service apache2 restart
Does the “sudo service apache2” apply for the php cli ?
PHP Cli uses a different php.ini .
sudo service apache2 This worked for me, thanks a lot. I had an instance of apache2 running, but it was screwing up apache that was trying to run in xampp.
Thanks again.
Nice tutorial. Help a lot :)
If you get “command not found” then apache2 may have been installed in a non-standard directory. For instance the bitnami installers put it in ‘stack’, so to find the ctl.sh you may need to use
sudo stack/apache2/scripts/ctl.sh restart
Whether this actually solves your problem or not, I don’t know, but it doesn’t cause the error.
Also when using bitnami the command
sudo stack/ctlscript.sh restart
restarts every service bitnami installed, including apache, in a logical order.
Final comment on this: If you are using one of the XAMPP or other stacks that installs apache as part of a larger package, you want to watch the stack-restart command (like the one I gave above for bitnami) very closely and always get the verbose log.
If you have made some change like blowing away an app directory you aren’t using to fit within tight cloud host requirements, the configuration files generated for apache may be wrong/fragile and may cause apache to just not start with no indication why. However the stack-restart command for the stack you are using will generally report that problem. For instance in bitnami the restart is fragile – unless every single line of the configuration files it is relying on is up to date, you’ll have to go edit them yourself
sudo nano /opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf
PHP is however more robust and usually only generates a warning if it doesn’t find some app configuration include. The worst you will see from PHP is a line like this
WARNING: Nothing matches the include pattern ‘/opt/bitnami/apps/limesurvey/conf/php-fpm/pool.conf’ from /opt/bitnami/php/etc/php-fpm.conf at line 17.
so you can sudo nano that .conf file also, but it might be better to let all future shell users have at least a chance to notice that you blew away an app package and then manually reconfigured. I would leave the warnings in place myself. Your mileage may vary.
why we have to restart apache server in ubantu
## How To Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu 14.04
$ sudo apt-get update
$ sudo apt-get install apache2
## Start / Stop and Restart Apache 2 Web Server Command
https://www.cyberciti.biz/faq/star-stop-restart-apache2-webserver/
https://www.cyberciti.biz/faq/ubuntu-linux-start-restart-stop-apache-web-server/
# Start Apache 2 web server
$ sudo /etc/init.d/apache2 start
$ sudo service apache2 start
# Restart Apache 2 web server
$ sudo /etc/init.d/apache2 restart
$ sudo service apache2 restart
# Stop Apache 2 web server
$ sudo /etc/init.d/apache2 stop
$ sudo service apache2 stop