You could try using /etc/init.d/apache2 reload
, which reloads the config files without killing apache.
However, there are cleaner solutions for this.
Instead of actually restarting apache, you could create an empty file i.e. /tmp/reload_apache
.
Then you have a script running every minute via cron that checks if this file exists, and if so it will restart apache and delete the file.
The only downside will be that you may have to wait up to 60 seconds until apache restarts.