Нужно ли блокировать контент в виде страница.html, которая открывается за пределами основной страниц

Приветствую!
Делаю сайт по MVC, на котором используется шаблоны, которые состоят из контента и выводятся как страницы в основной странице сайта.
Основная страница оформлена как полноценная веб-страница и имеет теги <html>, <title>, <meta>, <body> и т.д..
Внутри этой страницы инклудом или Ajax’ом тянутся и выводятся другие страницы: страница с меню, страница футера, и другие страницы, которые выводятся как блоки на основной странице.
Каждую такую страничку можно открыть за пределами основной страницы, без всех тегов <html>, <title>, <meta>, <body> и т.д. и поэтому я хочу спросить: нужно ли блокировать вывод таких недостраниц отдельно? Если нужно, то каким способом?

 

не должно такого быть

 

Есть контроллер и для него есть view с шаблономи страниц, для этого контроллера.
Можно не создавать файл с шаблоном.html, а просто в контроллере написать эту страницу и она будет выводиться.
Например, пишу в контроллере страничку:

Код (Text):
  1.     public function qrcode_goods() {
  2.         echo ‘<div class=»»>
  3.                 <p>Куриный код для товара</p>
  4.              </div>’;
  5.     }

После этого, готова страница https://mysite.ru/qrcode_goods.html
И эта страница открывается и внутри основной страницы и самостоятельно.
Применяется фреймворк ThinkPHP6, похож на Laravel.
На Laravel вот тоже можно открыть такую страничку самостоятельно или нет?
Если нет, то как в Laravel это организовано?

 

не знаю как там.. но думаю тоже адекватно настроить можно

имхо все дело в роутах
и нужно смотреть и понимать — как собирается страница во вьюхах… шаблонизатор какой-то?

 

Встроенный в фреймворк.
Во всяком случае, я отдельно шаблонизатор не ставил.

 

Шаблоны убираются из корня или на крайняк к ним блокируется прямой доступ. В корне оставляете только статик обвес и в крайнем случае фронт.

 

route.php выглядит так:

PHP:
  1. // +———————————————————————-
  2. // | Настройки маршрутизации
  3. // +———————————————————————-
  4.  
  5. return [
  6.     // pathinfo Сепаратист
  7.     ‘pathinfo_depr’         => «https://php.ru/»,
  8.     // URL -псевдо -статический суффикс
  9.     ‘url_html_suffix’       => ‘html’,
  10.     // URL -обычные параметры метода используются для автоматического генерации
  11.     ‘url_common_param’      => true,
  12.     // Открыть ли анализ задержки маршрутизации
  13.     ‘url_lazy_route’        => false,
  14.     // использовать ли маршрутизацию
  15.     ‘url_route_must’        => false,
  16.     //  слияние правил маршрутизации
  17.     ‘route_rule_merge’      => false,
  18.     // полностью ли соответствует маршрутизации
  19.     ‘route_complete_match’  => false,
  20.     // посетите имя слоя контроллера
  21.     ‘controller_layer’      => ‘controller’,
  22.     // Имя воздушного контроллера
  23.     ’empty_controller’      => ‘Error’,
  24.     //  использовать суффикс контроллера
  25.     ‘controller_suffix’     => false,
  26.     // правила переменной маршрутизации по умолчанию
  27.     ‘default_route_pattern’ => ‘[\w\.]+’,
  28.     // Должно ли включить кэш запроса true поддержка автоматического кэширования, чтобы установить правило кэша запроса
  29.     ‘request_cache’         => false,
  30.     // Запрос с периодом достоверности кэширования
  31.     ‘request_cache_expire’  => null,
  32.     // Глобальные правила исключения кэша запросов
  33.     ‘request_cache_except’  => [],
  34.     // Имя контроллера по умолчанию
  35.     ‘default_controller’    => ‘Index’,
  36.     // Имя операции по умолчанию
  37.     ‘default_action’        => ‘index’,
  38.     // Суффикс метода работы
  39.     ‘action_suffix’         => »,
  40.     // метод обработки, возвращаемый форматом JSONP по умолчанию
  41.     ‘default_jsonp_handler’ => ‘jsonpReturn’,
  42.     //  метод обработки JSONP по умолчанию
  43.     ‘var_jsonp_handler’     => ‘callback’,
  44. ];

Перевод комментариев с китайского, машинный.

 

На Ларке — указываешь в роуте например:

PHP:
  1. Route::get(‘about’, [PageController::class, ‘index’])

в контролере PageController в методе index например

PHP:
  1. return view(‘about’, [тут можно передать переменные]);

а во вьюхе about.blade.php пишем наш контент, но блейд поддерживает слои, наследования и прочее .. потому можно указать как вьюху — родителя, куда будет данный контент вставляться, секции и прочее полезности

самостоятельно вязть и открыть саму вьюху — например site/…about.blade.php нельзя, так как шаблоны вообще за корнем сайта находятся
— Добавлено —
посмотрите просто документацию к своему фреймфорку … как правильно все делать

 

Именно так и сделано.
Не я делал, опенсорс.
Шаблоны и контроллеры находятся выше корня.

 

Как тогда открываются шаблоны напрямую? Фреймворк делает то, что его не просили? :) Может, он роутинг делает по наличию файлов – это какая-то отсталость. Похоже на движки «на файлах».

 

Вот эту запись в какой конкретно файл вносите?
Директория файла какая и название файла?

 

Посмотрите Доку по ларвелю.. Всё описано в разделе маршруты( route)

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *