Cita: Una vez esto se ha conseguido, lo que quiero es que no se pueda cambiar la página que tiene que cargar antes de main, desde main.php, porque main.php es un archivo al que tendrán acceso los usuarios y entonces cuando lo suban a su servidor, podrán quitar el método o cambiar la página de carga antes de main.
1) Defines en el .htaccess que quieres que tu INDEX sea main.php y alli defines una constante (la que tu quieras)
2) En todos los demas archivos colocas como primera linea un chequeo de si esa constante ya fue definida (o sea si ya pasastes por main.php y este incluyo al otro script) y sino esta definida.. lo hechas con exit()
Asi trabajan los frameworks que he visto
PD: por que no defines una variable en vez de constante ? simplemente porque la constante se puede definir una sola vez asi estas seguro de que el unico punto de entrada a tu programa es tu INDEX (main.php)