Q:

Cannot start apache (Unable to change directory to /root)

When trying to start Apache by using:
/etc/init.d/httpd start

I get the following error in /var/log/httpd/error_log:
Unable to change directory to /root

Anyone have any idea what this means?

A:

Its SELinux.
because you have it enabled, you need to start service using 
service httpd start

edit your SELinux config and either disable it or set it to permissive:

nano /etc/sysconfig/selinux

# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled

Once changed then you will be able to start httpd using:
/etc/init.d/httpd start

If you need to keep SELinux enabled, then just use the service script to start/stop/restart the service.
# service httpd start/stop/restart 

