четверг, 21 июня 2012 г.

Настройка web-сайта, разработанного с помощью Symfony2, на реальном web-сервере

  • Если после загрузки на реальный web-сервер, скрипт app.php, запускающий контроллеры сайта, не находит контроллеры, скорее всего, нужно почистить кэш командами:
    • на Windows: php app/console cache:clear --env=prod
    • на Unix: app/console cache:clear --end=prod. Если не запускается, нужно разрешить права запуска командой chmod +x console. В верхней строке скрипта указана ссылка на исполняющую скрипты интерпретатор php. Если в вашей системе путь отличается, нужно указать правильный.
  • Для упрощения http-запросов сайта средой Symfony2 активно используется механизм переопределения url (url-rewriting), предоставляемый модулем mod_rewrite web-сервера Apache HTTPD. В некоторых каталогах уже определены правила переопределения url, например:
    • чтобы не вводить путь к контроллеру ([имя домена]/web/app.php/[контроллер сайта с параметрами]), правило, размещенное в каталоге web, позволяет указывать url в форме [имя домена]/web/[контроллер сайта с параметрами];
    • для каталогов /app, /bin, /src определены правила, исключающие доступ к содержимому каталога извне;
    • также желательно вместо адреса начальной страницы [имя домена]/web/ указывать просто название сайта, т.е. [имя домена], для этого в корневом каталоге сайта нужно разместить файл под названием .htaccess со следующим содержимым:
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* /web/ [R]
</IfModule>

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

Отправить комментарий