Яка користь каталогу пабів у Magento 2


11

Можливо, я просто не отримую цього, але якщо мої файли вже є кешованими, то яке б було використання каталогу пабів у Magento 2? Єдиним моїм освіченим припущенням було б те, що використання резервного механізму можна дещо полегшити, маючи відомий набір файлів для цієї теми.

Читаючи документи, я не розумію користі, хоча відчуваю, що розумію динамічні, статичні та кешовані файли.

Як я розумію, кеш - це просто визначене відоме місце розташування активів, завдяки якому я здогадувався, що каталог паб - це механізм, який стандартизує місце файлів для зменшення ресурсів, що використовуються в механізмі резервного копіювання.


чудове запитання, мені цікаво, чи безпека є єдиною перевагою, або вона також покращує швидкість
Claudiu Creanga

Відповіді:


15

Каталог пабів - це захід безпеки, щоб заблокувати доступ громадськості до активів вашого кореневого каталогу, а саме до каталогу додатків. Причина того, що index.php також розташована у кореневому каталозі, вважається, що він звертається до людей, чий веб-хостинг ускладнює чи безсильно змінити веб-коріння.

Під час використання pub / index.php папка вихідного додатка не зможе отримати доступ, хоча це може бути, якби index.php запускався з кореневого каталогу. Така практика спостерігається також у Symfony та Zend 2.

Таким чином, жодна з конфігурацій, шаблонів додатків Magento не піддається впливу.

Як правило, знання архітектури щодо pub index.php vs root index.php не потрібні розробникам frontend в команді, але розуміння його основ добре знати.


вам потрібно додати document_root_is_pub = trueсвій текст, ./app/etc/env.phpякщо ваш корінь /pub/- github.com/magento/magento2/pull/9094
Alex Gusev

10

Magento 2 постачається з двома файлами index.php, де один файл знаходиться в кореневій папці, а інший - у папці / pub. Magento 2 пропонує запустити вашу програму, використовуючи будь-який із цього файлу. Якщо ви вирішили запустити свою програму за допомогою /pub/index.php, це хороше рішення з точки зору безпеки, оскільки обмежує несанкціонований прямий доступ до файлів додатків.

Як бічна примітка, добре пам’ятати, що /index.phpфайл використовується при запуску в режимі розробника і /pub/index.phpвикористовується під час виробництва як режиму виробництва


1
Я вдячний зазначити, що є 2 файли index.php, але щодо того, яка була користь та використання програми за допомогою архітектури цього типу, жоден з них не стосувався. Якщо я не пропускаю більше теми, я продовжував відповідати на питання, переглядаючи статті та документи Алана Шторма, Зенда та Симфоні.
Брайан Елліс

щодо вашого останнього твердження про dev / prod, чи можете ви підтвердити, де це робиться? Я не бачу нічого подібного
Claudiu Creanga

Я з @brianellis, чому це потрібно так? Схоже, це не обманює браузер із того, що я бачу.
ladle3000
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.