Автоматически включая определенный («BASEPATH») ИЛИ выход («Прямой доступ к сценарию запрещен»);

Фон

я знаю это

 defined('BASEPATH') OR exit('No direct script access allowed');

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

Я знаю, что .htaccess используется для предотвращения прямого доступа, этого недостаточно для защиты или:

defined('BASEPATH') OR exit('No direct script access allowed');

Необходим для каждого отдельного просмотра?

Это не жизненно важная проблема, но приятно делать вещи СУХИМЫМИ и не помещать одну и ту же строку кода вверху каждого представления.

Я искал в стеке похожие посты, но все они, похоже, просто объясняют, для чего предназначено определение (что я знаю, но недостаточно хорошо, чтобы знать, могу ли я обойтись без него или заменил его более автоматической версией).

Всего 2 ответа


Вам не нужен этот код в файлах просмотра. Я знаю, что это похоже на меру безопасности, но это не так. Его основная цель - проверка работоспособности. Не следует ожидать, что многие (большинство? Все?) Основные файлы CodeIgniter будут работать должным образом, если они используются за пределами платформы CodeIgniter.

Вы будете поражены тем, как много людей пытаются это сделать.


Я понял свой ответ, я использую статический колонтитул, и я могу просто включить

defined('BASEPATH') OR exit('No direct script access allowed');

сразу после тега body, который включается в каждое создаваемое мной представление.

Должен любить статические заголовки и представления!


Есть идеи?

10000