Есть ли недостатки или угрозы безопасности с set_include_path? - PullRequest
1 голос
/ 31 августа 2011

Хорошо, для начала - я зависим от использования корневой структуры относительных ссылок для всего.Включение в php всегда делает это трудным для меня, но я наткнулся на строку кода, которая позволяет мне включать root относительно.

Это действительно просто:

set_include_path( get_include_path() . PATH_SEPARATOR . $_SERVER['DOCUMENT_ROOT'] );

Это из комментария вРуководство по php

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

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

Ответы [ 2 ]

1 голос
/ 31 августа 2011

Нет риска для безопасности, пока вы контролируете то, что вы положили в include_path.

Однако, если у вас слишком много путей в include_path, производительность падает, так как PHP должен будет пробовать каждый путь перед поиском файла.

0 голосов
/ 31 августа 2011

Учитывая ваш код, docroot находится в конце include_path, поэтому вы заметите снижение производительности только тогда, когда включенный файл не найден в остальной части include_path (т.е. отсутствует файл).

...