Symfony Project Publication

2,562 views

Published on

Публикация symfony проекта в web и его обновление

Published in: Self Improvement
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,562
On SlideShare
0
From Embeds
0
Number of Embeds
69
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Symfony Project Publication

  1. 1. Публикация symfony проекта в web и его обновление Alex Demchenko pilo.uanic@gmail.com I love Symfony for 2+ years
  2. 2. ['UA camp'] Кто я ?  Люблю symfony уже 2+ года  Team lead of Lazy Ants (web2.0services.de)
  3. 3. ['UA camp'] О чем поговорим?  Как залить и заставить работать свой проект в web  Как обновлять проект
  4. 4. ['UA camp'] Хостинг выделенный сервер вирутальный сервер Шаред
  5. 5. ['UA camp'] Шаред хостиг у нас нет ни pear ни тем более command-line Что делать?
  6. 6. ['UA camp'] Инструменты  Шаред хост с php5  Доступ по FTP  Работающий проект на локальной машине
  7. 7. ['UA camp'] Пример директорий на хостере / /stats /logs /html (httpdocs, public_html, наш document_root) и тд. ...
  8. 8. ['UA camp'] Что должно получиться на выходе Вариант РАЗ Вариант ДВА / / /html /html /myproject /pear_libs /apps /symfony … /data /lib /symfony /symfony /projects … /myproject /web /apps /sf
  9. 9. ['UA camp'] Вариант РАЗ Пакуем symfony (все либы копируется в проект) - php symfony freeze - либо берем подготовленые либы из symfony sf_sandbox_1_2 (/lib/symfony)
  10. 10. ['UA camp'] Загружаем все на хост Загружаем наш проект без папки WEB локально хостинг myproject /mypoject … /lib /symfony …
  11. 11. ['UA camp'] Загружаем все на хост Загружаем папку WEB в наш webroot локально хостинг myproject/web /html … /sf
  12. 12. ['UA camp'] Последние приготовления шаманим в ProjectConfiguration.class.php <?php require_once dirname(__FILE__) . '/../lib/symfony/autoload/sfCoreAutoload.class.php'; sfCoreAutoload::register(); class ProjectConfiguration extends sfProjectConfiguration { public function setup() { } }
  13. 13. ['UA camp'] Symfony cache и log — права на запись  /myproject/cache  /myproject/log
  14. 14. ['UA camp'] Шаред с мультидоменами Загружаем symfony локально хостинг %PEAR_DIR%/symfony /pear_libs/symfony %PEAR_DIR%/data/symfony /pear_libs/data/symfony
  15. 15. ['UA camp'] makesymlink.php <?php /* Перед выполнением установите права на папку web для записи, а после того как создадите линк, верните прежние права. */ $rootdir = realpath(dirname(__FILE__).'/..'); $webdir = realpath(dirname(__FILE__)); symlink($rootdir.'/pear_libs/data/symfony/web/sf', $webdir.'/sf'); ?>
  16. 16. ['UA camp'] Символическая ссылка для symfony target link pear_libs/symfony projects/myproject/lib/symfony
  17. 17. ['UA camp'] makesymlink_symfony.php <?php $rootdir = realpath(dirname(__FILE__).'/..'); /* Перед выполнением установите права на папку web для записи, а после того как создадите линк, верните прежние права. --------------------------------------------------------------- /projects/myproject/lib */ // symfony_lib symlink($rootdir.'/pear_libs/data/symfony', $rootdir.'/projects/myproject/data/symfony');
  18. 18. ['UA camp'] Как обновлять?
  19. 19. ['UA camp'] Subversion / TurtoiseSVN экспорт измененных файлов между двумя ревизиями у http://tigor.com.ua/blog/2009/02/24/windows- subversion-tortoisesvn-compare-two-versions-of- a-repository/
  20. 20. ['UA camp'] Копи — Паст рулит :)
  21. 21. ['UA camp'] Вы обладатель выделенного или виртуального сервера? У вас нет этих сложностей и вы можете использовать возможности svn на полную svn update svn export
  22. 22. ['UA camp'] Работа с dev и prod серверами • commit в svn • update (export) на dev server • testing на dev server • export на prod server
  23. 23. ['UA camp'] Обновляем базу данных Плагин для получения sql diff файлов между schema.yml и базой данных SfPropelSqlDiffPlugin
  24. 24. ['UA camp'] Команды SfPropelSqlDiffPlugin После изменения shema.yml > php symfony propel:build-sql-diff Результат лежит в data/sql/propel.diff.sql Добавляем в базу propel.diff.sql > php symfony propel:insert-sql-diff Выполняем предыдущие операции одной строкой > php symfony propel:build-all-diff
  25. 25. ['UA camp'] Как же быть с cli? Ставим sfWebCliPlugin
  26. 26. ['UA camp'] Symfony и шаред хостинг с cpanel http://www.weblincs.co.uk/symfony-framework- cPanel-shared-hosting.html
  27. 27. ['UA camp'] Шаред хостинг для symfony ServerGrove — предлагает утилиту Maestro Что может:  Загрузка, установка вашего проекта на symfony  Управление конфигурацией сервера apache  Просмотр логов с помощью Ajax сразу в броузере  Веб cli интерфейс  Улучшенные требования по безопасности к symfony проектам http://servergrove.com/symfonyhosting
  28. 28. ['UA camp'] Спасибо за внимание
  29. 29. ['UA camp'] Alex Demchenko pilo.uanic@gmail.com http://web2.0services.de http://lazy-ants.de

×