<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def on_sighup(self, signal_unused, frame_unused):
 """Reload the configuration :param int signal_unused: Unused signal number :param frame frame_unused: Unused frame the signal was caught in """

        # Update HTTP configuration
        for setting in self.http_config:
            if getattr(self.http_server, setting) != self.http_config[setting]:
                LOGGER.debug('Changing HTTPServer %s setting', setting)
                setattr(self.http_server, setting, self.http_config[setting])

        # Update Application Settings
        for setting in self.settings:
            if self.app.settings[setting] != self.settings[setting]:
                LOGGER.debug('Changing Application %s setting', setting)
                self.app.settings[setting] = self.settings[setting]

        # Update the routes
        self.app.handlers = []
        self.app.named_handlers = {}
        routes = self.namespace.config.get(config.ROUTES)
        self.app.add_handlers(".*$", self.app.prepare_routes(routes))

        LOGGER.info('Configuration reloaded')