Развёртывание Zend Framework на виртуальном хостинге

В документации по Zend Framework 2 и 3 достаточно хорошо описан процесс развёртывания этих фреймворков на сервере. Но, что делать если приложение будет работать на виртуальном хостинге (всё-таки выделенный сервер необходим далеко не всегда)?

Но для начала ответим на вопрос: а,есть ли различия при развёртывании Zend Framework на сервере и «обычном» хостинге?

На самом деле различия есть.

Как известно в случае Zend Framework точка входа в приложение находится в файле index.php в папке public. Вследствие этого чтобы сайт был доступен по положенному ему доменному имени необходимо перенаправление запросов из корневой папки виртуального хоста в папку public.

В документации Zend данное перенаправление задаётся в файле конфигурации виртуального хоста. Но, на виртуальном хостинге доступ к этому файлу отсутствует. Поэтому, единственным способом как-то повлиять на поведение запросов к виртуальному хосту остаётся файл .htaccess.

Самый простой способ реализовать перенаправление в папку public, это прописать правило для расширений файлов. Например, так:

Однако, может возникнуть ситуация, когда нужное расширение ещё не прописано.
Поэтому более грамотным решением будет сделать перенаправление при помощи директивы RewriteCond, как показано ниже.

Таким образом, все без исключения запросы будут корректно перенаправляться в папку public.

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

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