Встановлення Symfony в домашніх умовах

18/03/2015 0 symfony, розробка, інструкція

Якщо ви шукаєте, як встановити Symfony, значить, ви вже пройшли довгий шлях від того моменту, коли вперше почули про цей фреймворк, зацікавилися, що ж воно таке, прочитали купу статей, і до теперішньої миті, коли ви усвідомлюєте, що скільки не читай про Symfony, а “помацати” його було би краще.

Власне, таким був і мій шлях. Перед початком встановлення нового фреймворка я налаштувалася на гірше — на купу додаткового ПЗ, яке треба буде ще інсталювати, на кілька актів мізкових статевих актів, які доведеться пережити, перш ніж я нарешті побачу працююче Symfony у мене на компі… Ви також це передчуваєте?  Тоді follow me, як то кажуть! :)

Отже, щоб встановити Symfony, окрім комп’ютера (очевидно, що він у наявності) та бажання (так само вже виявлено), вам знадобиться:

1. PHP версії 5.4 або вище, встановлений на вашому комп’ютері. Версію PHP можна перевірити командою php --version:

zd@zd-System-Product-Name:~$ php --version
PHP 5.5.9-1ubuntu4.5 (cli) (built: Oct 29 2014 11:59:42

Таким чином, я маю PHP 5.5.9 і можу сміливо продовжувати встановлювати Symfony.

Якщо у вас версія PHP нижча за 5.4, оновіть його версію та слідуйте за мною — попереду найцікавіше. :)

2. …На цьому технічні вимоги для бажаючих мати Symfony на борту закінчилися. Опа — одне з неприємних передчуттів відпало. Клас!

І одразу ще одна приємна звістка на майбутнє. Вам не доведеться інсталювати Symfony щоразу, починаючи новий проект. Відтепер усе, що вам потрібно, — це один раз встановити Symfony Installer на своєму комп’ютері.

Власне процес встановлення, ясна річ, відрізняється для різних систем.

Отож, якщо у вас Linux або Mac OS X, подальша процедура наступна:

~$ curl -LsS http://symfony.com/installer > symfony.phar
~$ sudo mv symfony.par /usr/local/bin/symfony
~$ Потрібно ввести адмінський пароль
~$ chmod a+[ /usr/local/bin/symfony

Якщо у вас немає cURL, можна обійтися і без нього. Потрібно буде лише замінити першу команду. Тоді послідовність дій виглядатиме так:

~$ php -r "readfile('http://symfony.com/installer');" > symfony.phar
~$ sudo mv symfony.phar /usr/local/bin/symfony
 Потрібно ввести адмінський пароль
~$ chmod a+[ /usr/local/bin/symfony

Тепер у нас є славнозвісний Symfony Installer. Далі робимо ще один маленький крок — у новому вікні консолі виконуємо наступну команду:

~$ symfony

Для Windows систем кроки наступні:

1) В консолі виконуємо команду

php -r "readfile('http://symfony.com/installer');" > symfony.phar

Так ми скачаємо файл symfony.phar, який містить необхідний нам Symfony Installer. Цей файл потрібно зберегти в папку, в якій ви будете створювати свої проекти на Symfony;

2) Запускаємо Symfony Installer такою командою

php symfony.phar

Ну як, усе ще напружено очікуєте, коли ж розпочнуться трабли з інсталяцією фреймоврка? Розслабтеся, ви вже встановили Symfony!

Вітання!

Ну що, замутимо перший проектик? ;)

Назвемо його firstproject (як неочікувано!). Для його створення використаємо команду new (ще неочікуваніше! ;) ):

1) Linux або Mac OS X

~$ symfony new firstproject

2) Windows

php symfony.phar new firstproject

Ця команда не лише створить проект із назвою firstproject у папці firstproject/, а й турботливо скачає найновішу стабільну версію Symfony. Тобто кожен ваш проект гарантовано буде створюватися на найновішій стабільній версії цього фреймворка (чудова фіча, як на мене).

Давайте поглянемо, що є у нашому новому проекті!

cd firstproject
php app/console server:run

А тепер у браузері перейдемо на http://localhost:8000.

sym2.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ю-ху!

Все працює!

(До речі, тут могли би бути перші підводні камені. Якщо у вас не така щаслива карма, як у мене, ви могли би побачити зараз порожню сторінку або сторінку з помилками. Це пов’язано із конфігурацією прав на папки app/cache i app/log. До них має бути повний доступ.

Наприклад, в Linux або Mac OS X можна надати такий доступ командою chmod 777, але в такому випадку після кожної очистки кеша вам доведеться повторювати цю процедуру знову.

Щоб закріпити необхідні права на папки назавжди, краще використати таку послідовність команд:

HTTPDUSER='ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -1'
sudo setfact -R -m u:'$HTTPDUSER":rwX app/cache app/logs

sudo setfact -dr -m u:"$HTTPDUSER":rwX -m u:'whoamt':rwX app/cache app/logs

Перший камінь спотикання переступили. Рухаємось далі. :) )

Нарешті ми можемо роздивитися Symfony не на скріншотах у статтях чи блогах, а вживу. Ось воно, рідненьке, так і вабить до себе... Особливо кнопочка “Run the demo”.  Що ж там такого може бути? Невже “Hello World” написали?!

demo.png

 

 

 

 

 

 

 

ОМГ, таки так. :)

А ще не полінувалися — показали код (відкривається кліком по Hello World), який, власне, і відображає нам на сайті ці сакральні слова:

hello.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

На сторінці Demo є ще демки для форми логіна. Якщо ми перейдемо на відповідну сторінку, то зможемо або залогінитися адміном і перейти на спеціальне “Hello World” — еспешелі фор ас (так і написано — “Hello World secured for Admins only!”), або ввійти звичайним юзером і перейти по адмінському посиланню на 403 сторінку, оскільки там  “Hello World” тільки для адмінів.

На цьому і завершую свій блог про встановлення Symfony. Після закінчення роботи із фреймовроком не забудьте зупинити сервер:

php app/console server:stop

Дякую за увагу!

Читайте наступні блоги по Symfony!

Поділитися