Do I need to restart httpd after changes in the httpd.conf file for changes to take effect?
You can have apache re-read its config files without restarting by
sudo apachectl graceful
(or apache2ctl
on debian).
From the Apache docs:
Gracefully restarts the Apache httpd daemon. If the daemon is not running, it is started. This differs from a normal restart in that currently open connections are not aborted. [...] This command automatically checks the configuration files as in configtest before initiating the restart to make sure Apache doesn't die.