Для Вашей локальной разработки они будут оба работать. Полукровка быстрее, более эффективна, и стабильна. Некоторые люди (самостоятельно включенный) используют его для хостинга их мест производства, даже. Конечно, хорошо для локальной разработки.
, Если бы Вы идете не-Windows, я предложил бы смотреть Phusion Passenger . Можно поддерживать несколько приложений на localhost, не имея необходимость делать 'рубиновый сценарий/сервер', каждый раз Вы хотите выполнить что-то.
, Когда рабочая Phusion Passenger, необходимо будет выследить файл журнала сами. полукровка отобразит журнал в консоли, так для получения той функциональности, которую Вы будете иметь к tail -f log/development.log
с Passenger.
, Почему направляющие поставлются с обоими? История. Webrick записан в рубине, таким образом, это был ранний фаворит. Полукровка приехала и была лучше, но поддержка webrick не была отброшена.
, Если Вы не хотите устанавливать Phusion Passenger, используйте полукровку. Это - значение по умолчанию, и это работает.
РЕДАКТИРОВАНИЕ 2009-08: мне также везло с тонкий , общедоступная замена для полукровки. Для разработки, дело не в этом большой из соглашения, но это было бы что-то для проверки для производства.
Я считаю, что правильный способ сделать это в symfony 1.2 выглядит следующим образом:
sfContext::switchTo('frontend'); //switch to the environment you wish to clear
sfContext::getInstance()->getViewCacheManager()->getCache()->clean(sfCache::ALL);
sfContext::switchTo('backend'); //switch back to the environment you started from
У меня это работает. Он удаляет все кешированные файлы из данного каталога:
$cache_dir = sfConfig::get('sf_cache_dir').'/'.$app.'/'.$env.'/';
$cache = new sfFileCache(array('cache_dir' => $cache_dir));
$cache->clean();
Я не думаю, что не существует "чистого" способа выполнить эту работу, так как разные приложения рассматриваются в symfony как совершенно отдельные среды. Очевидно, что задание может быть выполнено менее или более грязным способом, выберите способ удаления любого файла в кэше / каталоге, запустите задачу phing clear-cache (cc) и т. Д.
вы можете просто запустить rm -rf cache / *, но вы можете нарушить какой-либо клиентский запрос. Более простой способ - запустить symfony cc через passthru () или exec ()
Вы можете создать экземпляр sfTask и запустить его следующим образом (в sf 1.2):
$task = new sfCacheClearTask(sfContext::getInstance()->getEventDispatcher(), new sfFormatter());
$arguments = array();
// type can be one of: i18n, routing, template, module, config
$options = array(
'frontend' => 'app',
'routing' => 'type',
'prod' => 'env',
);
$task->run($arguments, $options);
Для всех возможных аргументов и опций см. Исходный код соответствующей sfTask ...