Лучше всего навигацию по сайту реализовывать через паттерн проектирования, например, самые классические MVC/HMVC или компонентные. Тогда у вас будет всего одна точка входа в систему и не придётся в каждом скрипте писать проверки, инклуды и тд.
Далее, касательно самой авторизации - тут тоже масса вариантов реализации, но самый минимальный и более-менее правильный вариант - организовать проверку на сессиях или куках, проверять методом наличие сессии или куки, если есть - пользователь авторизован, делать перенаправление со страницы авторизации на нужную, либо же динамически отдавать контент, в зависимости от того как у вас там спроектирована система. Если нет - отдать контент страницы авторизации или перенаправить на нее. SEO здесь так же влияет, если необходима индексация страницы авторизации, то только перенаправлять.
Чтоб сессии работали, ничего инклудить не обязательно, главное чтоб вначале скрипта всегда выполнялся session_start(). В итоге проверка отработает на всех ваших скриптах страниц, которые должны делать редирект в случае если пользователь не авторизован.