Issue a Conditional Redirect in Drupal 7
You should not use hook_init, but hook_boot as you want to perform the check when caching is turned on. That would also be the best explanation as to why your exit doesn't work. That or you forgot to clear cache after implementing the hook. (All hooks are cached in D7)