Меню Рубрики

Установка yii2 mac os

Yii Framework

Установка Yii2 под Mac OS X

Установка Yii2 под Mac OS X

Сообщение Jazz » 2014.05.31, 15:12

Всем привет. Не удается развернуть приложение под Маком. Имеется установленный через Homebrew PHP. Вывод команды phpinfo() свидетельствует о подходящей версии интерпретатора:

Далее делаю как в гайде:

Re: Установка Yii2 под Mac OS X

Сообщение lynicidn » 2014.05.31, 15:46

Re: Установка Yii2 под Mac OS X

Сообщение Jazz » 2014.05.31, 17:01

Re: Установка Yii2 под Mac OS X

Сообщение lynicidn » 2014.05.31, 21:06

Re: Установка Yii2 под Mac OS X

Сообщение lynicidn » 2014.05.31, 21:06

Re: Установка Yii2 под Mac OS X

Сообщение samdark » 2014.05.31, 23:47

Re: Установка Yii2 под Mac OS X

Сообщение Jazz » 2014.06.02, 21:03

Пока не особо дальновиден в OS X, но насколько я понял, brew прогрессивнее и призван облегчить работу с настройками окружения.

Команда php -v продолжала выдавать версию 5.3 вместо ожидаемой 5.5.

В руководстве по настройке php в брю предлагалось прописать в .bashrc путь к php:

Источник

Программирование с YII2: приступаем к работе

Установка YII2

Документация

Вы можете найти подробную инструкцию здесь, я же пробегусь по простой и типичной для Mac OS X установке и настройки среды. У фреймоврка есть подробная документация и описание классов, которое содержит все детали о YII.
От переводчика. Я в свою очередь не имею под рукой яблочного девайса и буду проделывать все действия под Ubuntu (запущенной под VMWare Player).

Установка Composer

Для комфортного использования фреймворка рекомендуется использовать популярный менеджер расширений PHP – Composer. Если он у вас еще не установлен проделайте следующее:

Установка YII2

Теперь используем Composer для установки YII2. Для установки требуется аккаунт на GitHub, если у вас его нет – зарегистрируйтесь.
Давайте назовем наш первый проект «hello»:

YII2 поддерживает два типа приложений для разработки: простые и продвинутые. Для данного урока мы будем использовать простое приложение, оно устанавливается по умолчанию. Шаблон продвинутого приложения поддерживает front-end, back-end и консоль, так же как WordPress, это административная панель и задачи для cron.

Установка и настройка локальной среды разработки

Я использую бесплатное ПО MAMP for OS X с открытым исходным кодом, для разработки. Убедитесь, что MAMP запущен и его web сервер и сервер базы данных запущены. Затем создайте символьную ссылку на директорию с сайтом:

Теперь, если вы настроили все верно, то открыв localhost:8888/hello/web вы увидите простой шаблон приложения YII2 с Bootstrap 3.x.

Эта страница удивит разработчиков, ранее разрабатывающих на YII 1.1, где не был предустановлен Bootstrap последней версии, который прочно занял свое место в сети.

YII архитектура приложения

Одна из ключевых особенностей фреймворка – поддержка паттерна MVC. Это позволяет создавать более структурированный код, который проще понимать, упрощает многие вещи, которые реализуются с трудом на PHP, такие как безопасность и автоматическая кодогенерация. Также это способствует поддержке и повторному использованию кода.
В приложении YII весь трафик направляется на один файл /web/index.php. Этот файл загружает YII, зависимости, а затем запускает наше приложение.

По умолчанию это Index метод в файле /controllers/SiteController.php

Как правило, в контроллерах много методов, но с минимальным количеством кода. Контроллеры управляют доступом, загружают модели и представления. Основная смысловая нагрузка должна лежать на моделях, а представления лишь отображают шаблоны.
По умолчанию YII отображает /views/layouts/main.php в качестве представления для /views/site/index.php. main.php поддерживает html и css структуру страницы с тулбаром и контентом. Внутри main.php происходит вызов содержимого:

Переменная $content будет заменена кодом сгенерированным в /views/site/index.php, который представляет статичную html страницу.

Пишем приложение «Привет мир!»

Включаем красивые URL-адреса

В начале давайте включим красивые адреса при помощи mod_rewrite. Если на домашней странице вы кликнете по кнопке about то увидите адрес подобный этому: localhost:8888/hello/web/index.php?r=site%2Fabout. Мы же сейчас его приведем к такому виду localhost:8888/hello/web/site/about.
В директории config хранятся настройки всей вашей среды: настройки веб приложения, консольного приложения и настройки баз данных. Изменим файл /config/web.php следующим образом:

Затем необходимо создать в директории /web, где хранится наш index.php, файл .htaccsess, со следующим содержимым:

Убедитесь, что в MAMP включен mod_rewrite, если же возникли проблемы посмотрите ветку на stackoverflow.
В вашем браузере перейдите по адресу localhost:8888/hello/web/site/about, теперь там вы должны увидеть страницу About простого приложения YII.

Создаем экшн

Следующим шагом создадим действие для контроллера, назвав Say, для повтора нашего сообщения. В файле /controllers/SiteController.php добавим следующее:

Эта функция будет искать параметр target в адресе url для его вывода на экран. В случае его отсутствия выведется просто «World». В фреймворке YII экшены реализованы как методы с префиксом actionИмяЭкшена. В класссе SiteController мы использовали public function actionSay для создания экшена Say.
Стандартным поведением метода render является поиск файла в views/ControllerID/ViewName.php поэтому давайте создадим в /views/site/ файл say.php:

Этот шаблон выведет строку «Hello +$(target)», где $(target) — переменная переданная в url. Для обеспечения безопасности она попадает не на прямую в строку, а в начале проверяется на вредоносный код.
Если вы теперь посетите localhost:8888/hello/web/site/say?target=Tuts%20Readers, то увидите следующее:

Это простой пример реализации MVC модели фреймворка. Более детально вы можете ознакомиться с данным примером на сайте фреймворка в официальной документации.
А теперь давайте зальем наше приложение на GitHub и запустим на продакшн-сервере.

Настройка вашей удаленной среды

Простое приложение YII должно запускаться на серверах Apache и Nginx «из коробки», я буду приводить инструкции по запуску на Apache, про Nginx вы сможете найти здесь.

Создаем репозиторий на GitHub

/Sites/hello/.gitignore, чем затем удалять в ручную лишнее. Хотя оба варианта допустимы.
Я использую приложение GitHub Mac OS X(https://mac.github.com/), хотя вы также можете воспользоваться командной строкой для инициализации репозитория. Например так(замените «youraccount» вашим именем на GitHub:

От переводчика. Я в качестве репозитория предпочитаю использовать Bitbucket, так как он позволяет иметь приватные репозитории бесплатно.
Конфигурируем Apache на сервере
Если у вас до сих пор не сконфигурирован сервер, рекомендую посмотреть на инструкцию по конфигурации сервера на Ubuntu (http://jeffreifman.com/digitalocean). Если у вас есть IP адрес, сконфигурируйте DNS вашего сервера:

Теперь войдите удаленно по ssh на ваш сервер при помощи IP или доменного имени

Обновите кофигурацию, установите Git, включите mod_rewrite для Apache и mcrypt для PHP.

Настройка доступа удаленного сервера к GitHub
Теперь мы настроим pull запросы с GitHub. Вначале установите Git

Теперь мы создадим группу для www, добавим данные и GitHub пользователей и настроим их права:

Теперь создадим ключ для синхронизации с репозиторием:

Вы увидите нечто похожее на это, вам необходимо скопировать и вставить этот ключ на GitHub
(если возникле проблемы посмотрите здесь (https://help.github.com/articles/error-permission-denied-publickey/)):

Зайдите в раздел настроек репозитория и добавьте этот ключ:

Затем вы увидите что-то подобное:

Наконец-то вы сможете склонировать ветку на ваш сервер:

Если все правильно сконфигурированно то вы увидите:

По мере увеличения количества кода вы через репозиторий сможете легко синхронизировать код локальной машины и продакшн-сервера. Это гораздо проще чем синхронизировать архивом или вручную, вы убедитесь в этом сами в процессе дальнейшего обучения.
Создание конфигурации сайта для Apache
Создадим конфигурационный файл:

Измените доменное имя на ваше:

Убедитесь в том что ваше приложение работает пройдя по ссылке yourdomain.com/site/say?target=World! (Отладочный тулбар фреймворка внизу страницы будет отключен!)

Поздравляю! Теперь мы готовы приступить к изучению более сложных особенностей фреймворка!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Установка xampp на mac os
  • Установка wordpress на mac os
  • Установка wine в mac os
  • Установка windows программ на mac os
  • Установка windows приложений на mac os