symfony project publication
DESCRIPTION
Публикация symfony проекта в web и его обновлениеTRANSCRIPT
Публикация symfony проекта в webи его обновление
Alex [email protected] love Symfony for 2+ years
['UA camp']
Кто я ? Люблю symfony уже 2+ года
Team lead of Lazy Ants (web2.0services.de)
['UA camp']
О чем поговорим? Как залить и заставить работать свой проект в web Как обновлять проект
['UA camp']
Хостинг
выделенный сервер вирутальный сервер
Шаред
['UA camp']
Шаред хостиг
у нас нет ни pear ни тем более command-line
Что делать?
['UA camp']
Инструменты
Шаред хост с php5 Доступ по FTP Работающий проект на локальной машине
['UA camp']
Пример директорий на хостере
//stats/logs/html (httpdocs, public_html, наш document_root)и тд. ...
['UA camp'] Что должно получиться на выходе
Вариант РАЗ Вариант ДВА//html/myproject /apps … /lib /symfony … /web /sf
//html/pear_libs /symfony /data /symfony/projects /myproject /apps
['UA camp']
Вариант РАЗ
Пакуем symfony (все либы копируется в проект)
- php symfony freeze - либо берем подготовленые либы из symfony sf_sandbox_1_2 (/lib/symfony)
['UA camp']
Загружаем все на хост
Загружаем наш проект без папки WEB
локально хостингmyproject /mypoject
… /lib /symfony …
['UA camp']
Загружаем все на хост
Загружаем папку WEB в наш webroot
локально хостингmyproject/web /html
… /sf
['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() { }}
['UA camp']
Symfony cache и log — права на запись
/myproject/cache /myproject/log
['UA camp']
Шаред с мультидоменами
Загружаем symfony
локально хостинг%PEAR_DIR%/symfony
%PEAR_DIR%/data/symfony
/pear_libs/symfony
/pear_libs/data/symfony
['UA camp']
makesymlink.php<?php/* Перед выполнением установите права на папку web для записи, а после того как создадите линк, верните прежние права.*/$rootdir = realpath(dirname(__FILE__).'/..');$webdir = realpath(dirname(__FILE__));symlink($rootdir.'/pear_libs/data/symfony/web/sf', $webdir.'/sf');?>
['UA camp']
Символическая ссылка для symfony
target linkpear_libs/symfony projects/myproject/lib/symfony
['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');
['UA camp']
Как обновлять?
['UA camp']
Subversion / TurtoiseSVN экспорт измененных файлов между двумя
ревизиями
у
http://tigor.com.ua/blog/2009/02/24/windows-subversion-tortoisesvn-compare-two-versions-of-a-repository/
['UA camp']
Копи — Паст
рулит
:)
['UA camp']
Вы обладатель выделенного или виртуального сервера?
У вас нет этих сложностей и вы можете использовать возможности svn на полную
svn updatesvn export
['UA camp']
Работа с dev и prod серверами
• commit в svn• update (export) на dev server• testing на dev server• export на prod server
['UA camp']
Обновляем базу данных
Плагин для получения sql diff файлов между schema.yml и базой данных
SfPropelSqlDiffPlugin
['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
['UA camp']
Как же быть с cli?
Ставим sfWebCliPlugin
['UA camp']
Symfony и шаред хостинг с cpanel
http://www.weblincs.co.uk/symfony-framework-cPanel-shared-hosting.html
['UA camp']
Шаред хостинг для symfonyServerGrove — предлагает утилиту Maestro
http://servergrove.com/symfonyhosting
Что может: Загрузка, установка вашего проекта на symfony Управление конфигурацией сервера apache Просмотр логов с помощью Ajax сразу в броузере Веб cli интерфейс Улучшенные требования по безопасности к symfony проектам
['UA camp']
Спасибо за внимание
['UA camp']
Alex Demchenko
http://web2.0services.dehttp://lazy-ants.de