A ver, sí puedes acceder a tu constantes desde todo tu sitio, pero debes haberlas definido antes de usarlas. Es decir, si tu no incluiste el archivo donde defines constantes ANTES de utilizarlas, no funcionará. PHP no guarda los estados de la aplicación entre peticiones consecutivas, y guardar rutas en variables de sesión no es una buena práctica.
Usando constantes:
Lo que debes hacer es, por ejemplo, crear un un archivo config.php tal que así:
Y en cada uno de tus archivos, simplemente incluir la configuración de los paths.
Código PHP:
Ver original<?php
require_once($_SERVER['DOCUMENT_ROOT'] . 'config.php');
require(HEADERS . 'miheader.php');
require(OTROS. 'miarchivo.php');
//mas cosas
?>
Aunque, actualmente, la práctica más extendida es ingresar a tu aplicación por un único punto de entrada, para recoger configuraciones y ejecutar las acciones deseadas por el usuario.
Ésto último, por ejemplo, es uno de las propiedades fundamentales para una implementación del patrón MVC.
PD: Es básicamente los que te ha dicho el otro compi, pero él cometió un error en "include_once('config.php);" ya que desde las carpetas de tu sitio, las ruta cambia, de ahí el DOCUEMNT_ROOT. Sólo tienes que colocar el config.php ahí