2013-06-02 4 views
0

Я взял на сайт, который обслуживает клиентский доступ. Все они имеют доступ к собственной папке, а в папке файлы имеют include с относительным путем, как показано ниже.Канта файлы доступа, которые включают в себя относительные URls

/ядро ​​- содержит все необходимые файлы

/client/file.php -

<? include "../core/file.php"; ?> 

но с растущим числом клиентов, я хочу, чтобы пройти уровень глубже и отделить их лучше .. .

/uk/client/file.php -

<? include "../../core/file.php"; ?> 

Это хорошо, но когда фил es, у них тоже есть собственный родственник, и это то, где он ломается.

Есть так много файлов, которые я не могу легко пройти через них, чтобы изменить все включенные пути, поэтому я хотел бы, возможно, сделать переписывание, чтобы подделать путь?

Я попытался это ...

RewriteRule ^uk/$/

Но это не работает.

Любая помощь будет принята с благодарностью

+0

Это, как правило, быть рекомендован с проектом такого масштаба, чтобы переменные, содержащие наиболее часто используемые пути в ваш проект (например, папка «core»). Таким образом, если вам нужно изменить свои пути, вы можете сделать это в одном месте. –

+0

Я обойдусь, сделав это, поскольку я только что взял сайт, но мне нужно быстрое исправление на данный момент – jhodgson4

ответ

0

Этот звук похож на работу для __DIR__, вы можете проверить documentation here

Директории файла. Если используется внутри include, возвращается каталог включенного файла. Это эквивалентно dirname (FILE). Это имя каталога не имеет завершающей косой черты, если это не корневая директория. (Добавлено в PHP 5.3.0.)

В противном случае вы все равно можете переключить все относительные пути на абсолютный путь и избежать каких-либо проблем, если какой-либо файл включен в другие.

Как примечание стороны я бы рекомендовал не использовать PHP короткий тег <?...?>, я предпочел бы использовать длинные теги <?php....?>

+0

Привет ... это добавит путь туда, где я включил? так что /server_path/uk/client/core/file.php – jhodgson4

+0

@ jhodgson4 да, вы можете попробовать, в любом случае, для быстрого исправления, я бы предпочел использовать 'абсолютный путь' в любом требовании/включении – Fabio

+0

. Я могу это сделать, но include paths внутри включенного файла все равно будут ошибочными :-(. Должен быть способ сделать это с помощью htaccess – jhodgson4

Смежные вопросы