Установка

Есть два способа, которыми Вы можете установить Yii:

  • С помощью Composer (рекомендуется)
  • Скачать шаблон приложения, содержащий в себе все зависимости, включая сам Yii фреймворк

Установка с помощью Composer

Рекомендуемый способ установки Yii, это использование пакетного менеджера Composer. Если у Вас не установлен Composer, можете скачать его по ссылке http://getcomposer.org/, или выполните следующую команду для скачивания и установки:

curl -s http://getcomposer.org/installer | php

(Строго рекомендуется выполнить глобальную установку Composer).

Если возникнут проблемы или Вам потребуется более детальная информация по установке Composer, обратитесь к официальному руководству:

С установленным Composer, Вы можете создать новый сайт Yii, используя один из готовых к использованию шаблонов приложений Yii. В зависимости от ваших потребностей, выбор правильного шаблона поможет ускорить разработку Вашего проекта.

В настоящее время, доступны два шаблона приложения Yii:

Инструкции по установке, Вы можете найти по указанным выше ссылкам. Что бы узнать больше об идеях лежащих в основе этих шаблонов и об использовании их, посетите разделы шаблон простого приложения и шаблон продвинутого приложения.

Если Вы хотите начать с нуля, а не использовать шаблон, дополнительную информацию можно найти в разделе Создание структуры Вашего приложения.

Установка из zip архива

Установка из zip файла состоит из двух этапов:

  • Загрузить шаблон приложения по ссылке yiiframework.com.
  • Распаковать загруженный файл

Если Вам нужны только файлы фреймворка Yii, Вы можете скачать zip файл с github. При создании своего приложения, возможно Вам поможет информация из раздела Создание структуры Вашего приложения.

Yii фреймворк не требует установки в каталог доступный из веб (на самом деле, такого быть не должно). Приложение Yii имеет один входной скрипт, обычно это только один файл, который должен быть доступен для веб-пользователей (т.е., должен быть размещен в веб-каталоге). Другие PHP скрипты, включая содержимое Yii фреймворка, должны быть защищены от доступа из веб, чтобы предотвратить возможные эксплуатации их со стороны хакеров.

Требования к окружению

Для Yii 2 требуется PHP 5.4.0 или выше. Yii был протестирован с серверами Apache и Nginx на ОС Windows и Linux. Yii может, также использоваться с другими веб-серверами и платформами, при условии, что имеется PHP 5.4 или выше.

После установки Yii, вы можете проверить, что ваш сервер удовлетворяет требованиям Yii. Это можно сделать запустив скрипт проверки в веб-браузере или из командной строки.

Если Вы установили шаблон приложения Yii через Composer или из загруженного zip файла, то найдете файл requirements.php в корневом каталоге Вашего приложения.

Для того чтобы запустить этот скрипт из командной строки, используйте следующую команду (после того, как перейдете в каталог с файлом requirements.php):

php requirements.php

Для того чтобы запустить этот скрипт в браузере, Вы должны убедиться, что он находится в каталоге, доступном из веб, а затем открыть в Вашем браузере страницу http://hostname/path/to/yii-app/requirements.php.

Рекомендуемая конфигурация Apache

Yii может работать с настройками сервера Apache по-умолчанию. В качестве меры безопасности, Yii поставляется с файлом .htaccess в папке фреймворка, чтобы запретить доступ к ресурсам приложения.

По умолчанию, запросы страниц Yii-сайта, идут через файл входного скрипта, обычно называемый index.php, и помещаемый в домашний каталог приложения. Результатом будут URL-адреса в формате: http://hostname/index.php/controller/action/param/value.

Чтобы скрыть входной файл из Ваших URL-адресов, добавьте инструкцию mod_rewrite в файл .htaccess в корневом веб-каталоге (или добавьте инструкции настройки виртуального хоста в файле httpd.conf сервера Apache, секция Directory для корневого веб-каталога). Пример файла .htaccess:

RewriteEngine on
 
# If a directory or a file exists, use the request directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward the request to index.php
RewriteRule . index.php

Рекомендуемая конфигурация Nginx

Yii также может использоваться с популярным веб-сервером Nginx, если для него установлено РНР расширение FPM SAPI. Ниже приведен пример конфигурации хоста для Yii-сайта на Nginx. Конфигурация указывает серверу отправлять все запросы для несуществующих ресурсов через входной файл, в результате получаем "красивые" URL-адреса без ссылки на index.php.

server {
    set $yii_bootstrap "index.php";
    charset utf-8;
    client_max_body_size 128M;
 
    listen 80; ## listen for ipv4
    #listen [::]:80 default_server ipv6only=on; ## listen for ipv6
 
    server_name mysite.local;
    root        /path/to/project/web;
    index       $yii_bootstrap;
 
    access_log  /path/to/project/log/access.log  main;
    error_log   /path/to/project/log/error.log;
 
    location / {
        # Redirect everything that isn't real file to yii bootstrap file including arguments.
        try_files $uri $uri/ /$yii_bootstrap?$args;
    }
 
    # uncomment to avoid processing of calls to unexisting static files by yii
    #location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
    #    try_files $uri =404;
    #}
    #error_page 404 /404.html;
 
    location ~ \.php$ {
        include fastcgi.conf;
        fastcgi_pass   127.0.0.1:9000;
        #fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
 
    location ~ /\.(ht|svn|git) {
        deny all;
    }
}

При использовании этой конфигурации, Вам нужно установить cgi.fix_pathinfo=0 в файле php.ini, чтобы избежать лишних системных stat() вызовов.

Обратите внимание, что при работе с HTTPS-сервером, Вам необходимо добавить параметр fastcgi_param HTTPS on;, чтобы Yii мог правильно определять, безопасное соединение.

Авторизация