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

Делюсь общими принципами того как разместить свой проект на практически-любом PHP framework'e на хостинг или сервер:

  1. Установите composer у убедитесь в том, что он работает корректно
  2. Соберите свой проект в архив в .tar.gz или .tar и загрузите на сервер
  3. В общем, у большинстрва фреймворков все содержимое для внешней части находится в папках под названием public, public_html или web. Структура приложения может выглядеть так:
    app/
    bin/
    src/
    tests/
    var/
    vendor/
    web/
    composer.json
    composer.lock
    phpunit.xml.dist
    README.md

    или так:

    app/
    bootstrap/
    public/
    routes/
    templates/
    vendor/
    composer.json
    composer.lock

    Обратите внимание, что в разных структурах фреймворков папка с публичным содержимым (index.php, изображениями, robots.txt...) находится в директориях с различными именами web или public

  4. Когда вы создаёте\добавляете новый домен, создаётся новая папка
    site.com/public_html

    при этом подразумевается, что все содержимое сайта должно находиться в папке public_html
    Как быть в этой ситуации? Ведь если вы  разместите все содержимое в этой папке то, для индекса будут доступны абсолютно все директрии вашего приложения, что является очень серьёзной ошибкой = ударом по безопасности.

  5. Ответ прост - создание символической ссылки, делается это элементарно:
    сначала удаляем папку public_html
    после создаем символическую ссылку ведущую на папку, в которой лежит вся общедоступная часть вашего приложения
    // если необходимо направить все запросы из public_html/ в папку web/
    ln -s web public_html
    
    // если необходимо направить все запросы из public_html/ в папку public/
    ln -s public public_html
    

На этом всё! Ничего сложного ))


Выразить благодарность

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

Так же, Вы можете перевести любую сумму, которую посчитаете нужной на наш счёт, что сильно мотивирует к написанию новых полезных статей.

Комментарии: