Если есть какие-либо вопросы о том, где что-то может быть развернуто, я бы по возможности избегал абсолютных путей, и если вы должны их использовать, обязательно создайте их, используя данные в суперглобальном элементе $_SERVER
.Значение $_SERVER['PHP_SELF']
будет содержать путь и имя файла для исполняемого в данный момент сценария, и затем вы можете извлечь путь, используя что-то вроде:
$path = dirname($_SERVER['PHP_SELF']);
Аналогично, значение $_SERVER['HTTP_HOST']
будет содержать текущий хост,и из этих двух вместе вы можете построить путь туда, где вы находитесь.Если вы используете HTTPS, вам также может понадобиться проверить протокол в $_SERVER['HTTPS']
.
. С учетом вышесказанного все же лучше использовать относительные пути и простую структуру файлов и каталогов, когда это возможно, поскольку этовсе более портативно и легче для чтения.Если, как в вашем примере, вы обнаружите, что много делаете ../css/styles.css
, вы можете пересмотреть структуру вещей.