Инсталиране и конфигуриране на symfony2 блог
Тъй като освобождаването на Symfony 2.0 инсталация процес и необходимите инструменти да го направят променена и подобрена няколко пъти. В тази статия ще обсъдим какво да се прави, за да се инсталира и конфигурира Symfony2-приложение.
Действително инструмент за създаване на нов Symfony-приложение в момента е командния ред помощна програма със същото име на. На Linux или Mac OS X може да се инсталира от конзолата:
Единственото условие за този инструмент - трябва да имате PHP версия 5.4 и по-горе. Ако все още използвате PHP 5.3, статията също ще бъде показан и втори вариант на инсталация.
Списък на малък, тук са налични команди:
за Symfony команда показва информация за текущата версия на инсталатора, между другото, една и съща информация може да се разглежда като пуснете полезността Symfony без никакви параметри. Symfony инсталатор редовно, приложена към излязат нови версии. Задаването веднъж в световен мащаб и в бъдеще, можете да го актуализирате един от отборите или selfupdate selfupdate (подобно на Композитор).
Аз препоръчвам периодично се актуализира, или да се направи актуализацията точно преди използването на командата конзола. Ако имате нужда от повече информация за някое от конзолни команди, използвайте командата помощ или --help опция.
Symfony предоставя възможност е много лесно да се вдигне и да стартирате приложението за демо (тук, отново, ще трябва PHP версия от 5.4). За да направите това, изпълнете следните команди:
Инсталиране Symfony2 посредством стандартната инсталационна
За да създадете нов сайт използва новото. Синтаксисът е:
Име на директория сигурен вариант - по избор. Ето един пример за възможните команди стартират възможности:
Сега трябва да отворите файла my_project_name / ап / довереник / parameters.yml и да направи необходимите промени в настройките на приложението.
Създаване на приложение, без да Symfony Installer
Преди появата на Symfony инсталатор препоръчва начин за създаване на ново заявление, е да се създаде един проект чрез Composer. Ако желаете, можете да използвате тази опция, но ако имате PHP 5.3, а след това, за съжаление, трябва само да ги и да може да се използва. Първо инсталирате Композитор в световен мащаб. Създаване Symfony-прилагане на последната стабилна версия е, както следва:
Или, ако искате да се посочи конкретен вариант:
Недостатък на този метод е, че той не вижда «Нейната» като версия, трябва да посочите само цифрите.
След като стартирате тази команда ще се изпомпва празен нов проект и всички необходими зависимости. След това, на конзолата онлайн ще трябва да въведете параметрите за променливи parameters.yml файл
Вграден уеб сървър
От версия 5.4, PHP се появи във вградения уеб сървър. По принцип, това е достатъчно, за да стартирате Symfony-приложения с изваждането от кутията. Това се постига чрез конзолата Symfony, която осигурява 4 команди за работа с уеб сървъра:
Разликата между сървъра: тичам и сървър: начало. че след първия ще виси в конзолата, и да се спре на сървъра ще се използва Ctrl + C. Вторият започва уеб сървър във фонов режим, и да се спре на необходимостта да се изпълнява команда сървър: спре.
Ако имате няколко Symfony-проекти на местно ниво, те могат да се движат по различни портове:
Повече подробности могат да бъдат прочетени на вградения уеб сървър с PHP уеб сайт. Ако се развие с помощта на Apache или Nginx, ще трябва ръчно да конфигурирате виртуални хостове за местно развитие. Моля, имайте предвид, че уеб сървъра построен използва само за да се развие и да го използвате в режим Prodakshen не се препоръчва.
конфигурация
Проверете конфигурацията на системата за използване Symfony да използвате конзола скрипт:
Тя ще провери дали всички изисквания на системата за Symfony и ако нещо липсва, то ще ви предупреди и ще ви каже какво да правя. Например, тя може да пропуснете някои разширения PHP, Symfony задължителен или липсва необходимата опция. Конзолната версия на PHP може да бъде отделен от уеб версия на конфигурацията. Така че, когато се направят някои важни промени, да го направи за версията уеб и конзолната версия. Налице е също така Symfony команда за проверка на сигурността на приложението си:
за правото на лични указатели
В Symfony ап / кеш и приложение / трупи папка трябва да има права за достъп до уеб сървър и потребител на командния ред. Поради това тези директории трябва да се дават съответните права. Това се прави с един от наличните методи.
Използване на един и същи потребител на уеб сървъра и конзола
За да направите това, в конфигурацията на уеб сървър, за да определите един и същи потребител и за конзолата. Например, за Apache, това се прави във файла httpd.conf (или apache2.conf).
Използване на ACL в една система, която поддържа коригират + а
Ако този метод се установи грешка, опитайте следното:
Използването на ACL на система, която не поддържа коригират + а
Ако това не помогне, опитайте да добавите опцията -n
Без помощта на ACL
Ако нито един от предишните методи, ти не дойде, променете Umask така че кеша на директор, и дневника може да се записва група или всички (в зависимост от това дали потребителите са уеб услуги и командния ред в едни и същи или различни групи). За да направите това, поставете следния ред в началото на приложението / конзолни файлове. уеб / app.php и уеб / app_dev.php:
дистрибуции Symfony
В примерите, описани по-горе, системата се използва Symfony Standard Edition. Тя включва прилагане скелет и Symfony-composer.json с всички необходими зависимости. Този монтаж е най-популярният и най-добрият избор за създаване на нова кандидатура. В допълнение, има и други монтаж:
- Symfony CMF Standard Edition - обичай изграждане на базата на Symfony CMF, дава възможност за лесно добавяне на CMS функционалност към вашия проект.
- Symfony REST Edition - монтаж на сървъра на организацията RESTful API базиран Symfony и FOSRestBundle.
Symfony и нейните съставни компоненти се актуализират редовно. Освежете вашия проект, можете да използвате командата
Ако отидете в голям версия на Symfony, а след това в повечето случаи няма да имате проблеми с вашия код. За да преминете към основната версия (например 2 * 3.0), ще трябва да прочетете инструкциите. Ако трета страна пакет А има зависимост от конкретна версия на Symfony, композиторът ще ви даде предупреждение и не продължи да работи, докато не се реши проблема.
Също така се актуализират инструкции от версия до версия могат да бъдат намерени в хранилището. Подобрете файлове.
Други съвети за работа по нов Symfony-приложение
Ако сте разбрали инструкциите за инсталиране на Symfony и вече имате скелет на бъдещата кандидатурата си, просто трябва да го напълни с бизнес логика и да се разшири с помощта на трети страни снопове. Ако сте начинаещ, ще, разбира се, да помогне документация Symfony2 от официалния сайт. Също така, има много полезни неща в готварска книга.
След като създадете нов празен проект, аз също направи някои допълнително конфигуриране. Например, аз се произнесе конфигурация за PHPUnit в приложението / phpunit.xml.dist файл. Аз се изключат някои директории и файлове, които не са обхванати от тестовете (например, класове с арматура), ако не го направите, тогава те ще се отрази на покритието на тест. Ако проектът се намира на GitHub както с отворен код, от самото начало да се свържа това да се оцени качеството на код услуги. Има и сервиз от Insight SensioLabs, за което съм написал в същата статия. За експеримента, аз го освободи от нетната Symfony стандартното издание, да се знае, че той ще се намери в Symfony код от кутията. Аз създадох изчистен дизайн, Symfony команда:
Текущата версия като на това писание е 2.7.1. След това, без да се прави една промяна, аз изпратих проект за публичен архив, в GitHub и направи на проверка с помощта SensioLabs Insight. И ето резултата.
Първият критичен грешката е, че след създаването на нов проект, аз не се промени тайната на сигурността в приложението / довереник / parameters.yml.dist файл. Определено трябва да се регистрирате пропуска си. Но в този конкретен пример, тя е безсмислена. Можете да промените само стойността по подразбиране, за да се използва, когато някой е от нула до разполагане на вашия проект. Този факт не означава, че е ще бъде използвана Prodakshen сървъра на същата стойност. Въпреки това, за да решите този проблем, просто замени стандартната ThisTokenIsNotSoSecretChangeIt пропуск към нещо по-различно.
Symfony идва с невалиден файлов composer.json :). защото няма достатъчно полета описание (описание), която е задължителна.
Config.php файл не е изтрита, на този, който се използва за удостоверяване на изискванията Symfony уеб среда и определяне на параметрите. Insight съветва да я премахнете от хранилището, така че не трябва да падне върху продукции.
Освен това има и информативни съобщения. Insight предлага да се премахнат всички .htaccess файлове, за да направи всички необходими промени в глобален конфигурационен уеб сървър. Също така да персонализирате страницата за грешки 404 и 500. Препоръчва всеки стрелец (Рот) в анотациите на контролера, използвайки винаги се уточнят методите, които трябва да се поддържат. И не забравяйте да се промени уеб иконата по подразбиране.
Това са препоръките ни дава робота. Някои от тях са спорни, но ако това е така, тогава някой има право да направи на базата. Във всеки случай, да са наясно с тях не може да навреди.