PHP: документ корневой каталог задача обратной строки
Вопрос
Я пытаюсь ссылаться на таблицу стилей в моем файле заголовка, используя $ _server ["document_root"] следующим образом:
<head>
<?php
print "<link href='".$_SERVER["DOCUMENT_ROOT"]."/include/style.css' rel='stylesheet' type='text/css' />";
?>
<title>eLMS</title>
</head>
Поскольку я тестирую локально, я получаю путь как:
<head>
<link href='C:\Users\wretrOvian\Documents\eLMS\site/include/style.css' rel='stylesheet' type='text/css' /> <title>eLMS</title>
</head>
И это не рендеринг в Firefox. Это происходит в IE, однако. Это, очевидно, проблема проверки. Но я попробовал тот же код на сервере - с теми же результатами. :(
Как мне это исправить? Конечный продукт может работать или не работать на локальном сервере, поэтому мне нужно, чтобы код был гибким.
Я использую Abyss Webserver X1 с PHP 5.2.8
Я должен использовать абсолютные пути - потому что я не хочу копировать папку «Включить» в каждый подкаталог приложения. Мне нужно иметь возможность ссылаться на это со всех мест.
Решение
Просто используйте это:
<head>
<link href='/include/style.css' rel='stylesheet' type='text/css' />
<title>eLMS</title>
</head>
Или, если он используется на месте:
<head>
<link href='../include/style.css' rel='stylesheet' type='text/css' />
<title>eLMS</title>
</head>
Корень документа предназначен только для внутреннего использования (внутри PHP), а не для вашего HTML.
Другие советы
Попробуйте использовать:
$_SERVER['HTTP_HOST']
Не используйте абсолютный путь файловой системы, используйте путь относительно (но не включая) корень документа. В этом случае просто /include/style.css
.
Для использования локальных файлов из браузера используйте file
схема.
file://C:/dir/file.ext
file:///dir/file.ext
Не уверен, что вам нужно две или три удара, вероятно, две в Windows с буквой для привода, три на *nix с корневой чертой, хотя я, кажется, помню, как видел три удара с помощью буквы Drive. Попытайся! :П
Попробуйте использовать DIRECTORY_SEPARATOR
постоянный. Он возвращает в Windows Systems и / ON *NIX Systems.
Прежде всего, корень документа - это буквально каталог, в котором находится веб -сервер / находится. Вы обычно не хотите использовать это с каким -либо контентом в Интернете. Используйте / вместо этого.