Spec-Zone.ru › Yii 2.0

Установка Yii

  1. Установка через Composer
  2. Установка из архива
  3. Другие варианты установки
  4. Проверка установки
  5. Настройка веб-серверов

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

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

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

Информация: Шаблон базового проекта подходит для разработки 90 процентов веб-приложений. Он отличается от шаблона расширенного проекта в основном тем, как организован их код. Если вы новичок в Yii, настоятельно рекомендуем использовать шаблон базового проекта из-за его простоты и достаточного функционала.

Установка через Composer

Установка Composer

Если у вас еще нет Composer, вы можете установить его, следуя инструкциям на сайте getcomposer.org. В Linux и Mac OS X выполните следующие команды:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

В Windows скачайте и запустите Composer-Setup.exe.

Если у вас возникли проблемы, обратитесь к разделу Устранение неполадок в документации Composer. Если вы новичок в Composer, также рекомендуем ознакомиться хотя бы с разделом Основные возможности использования документации Composer.

Во всех примерах команд в этом руководстве предполагается, что у вас установлена глобальная версия Composer, доступная в качестве команды composer. Если вы используете composer.phar в локальном каталоге, вам необходимо соответствующим образом скорректировать примеры команд.

Если Composer уже был установлен ранее, убедитесь, что вы используете обновлённую версию. Вы можете обновить Composer, выполнив composer self-update.

Примечание: Во время установки Yii Composer может запросить много информации из API Github. Количество запросов зависит от количества зависимостей вашего приложения и может быть больше, чем лимит запросов API Github. Если вы превысите этот лимит, Composer может попросить ваши учетные данные Github для получения маркера доступа к API Github. При быстрых подключениях вы можете превысить этот лимит раньше, чем Composer сможет обработать это, поэтому мы рекомендуем настроить маркер доступа до установки Yii. Обратитесь к документации Composer по маркерам доступа API Github, чтобы узнать, как это сделать.

Установка Yii

После установки Composer вы можете установить шаблон приложения Yii, выполнив следующую команду в доступной по сети папке:

composer create-project --prefer-dist yiisoft/yii2-app-basic basic

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

Информация: Если команда composer create-project завершится ошибкой, вы можете обратиться к разделу устранения неполадок в документации Composer для выявления распространённых ошибок. После исправления ошибки вы можете продолжить прерванную установку, выполнив composer update внутри каталога basic.

Совет: Если вы хотите установить последнюю версию разработки Yii, вместо этого вы можете использовать следующую команду, которая добавляет параметр стабильности:

composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic basic

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

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

Установка Yii из архива включает три шага:

  1. Скачайте архивный файл с сайта yiiframework.com.
  2. Распакуйте скачанный файл в доступную по сети папку.
  3. Отредактируйте файл config/web.php, введя секретный ключ для элемента конфигурации cookieValidationKey (это делается автоматически, если вы устанавливаете Yii с помощью Composer):

    // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
    'cookieValidationKey' => 'enter your secret key here',
    

Другие варианты установки

Вышеуказанные инструкции показывают, как установить Yii, что также создаёт работающее из коробки базовое веб-приложение. Этот подход является хорошей отправной точкой для большинства проектов, как небольших, так и крупных. Он особенно подходит, если вы только начинаете изучать Yii.

Но есть и другие варианты установки:

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

Проверка установки

После завершения установки настройте свой веб-сервер (см. следующий раздел) или используйте встроенный веб-сервер PHP, выполнив следующую консольную команду в каталоге проекта web:

php yii serve

Примечание: По умолчанию HTTP-сервер будет слушать порт 8080. Однако, если этот порт уже используется или вы хотите обслуживать несколько приложений таким образом, вы можете указать используемый порт. Просто добавьте аргумент --port:

php yii serve --port=8888

Вы можете использовать свой браузер для доступа к установленному приложению Yii по следующему URL:

http://localhost:8080/

Successful Installation of Yii

В вашем браузере должно отобразиться указанное поздравление. Если нет, проверьте, соответствует ли ваша установка PHP требованиям Yii. Вы можете проверить, выполнены ли минимальные требования, используя один из следующих способов:

  • Скопируйте /requirements.php в /web/requirements.php и затем используйте браузер для доступа к нему по адресу http://localhost/requirements.php
  • Выполните следующие команды:

    cd basic
    php requirements.php
    

Вы должны настроить свою установку PHP так, чтобы она соответствовала минимальным требованиям Yii. Наиболее важно, чтобы у вас была версия PHP 5.4 или выше. В идеале последняя версия PHP 7. Также необходимо установить расширение PDO PHP (PDO PHP Extension) и соответствующий драйвер базы данных (например, pdo_mysql для баз данных MySQL), если ваше приложение требует базы данных.

Настройка веб-серверов

Информация: Вы можете пропустить этот подраздел, если вы только тестируете Yii и не планируете развертывать его на производственном сервере.

Установленное согласно указанным выше инструкциям приложение должно работать с веб-серверами Apache HTTP (Apache HTTP server) или Nginx HTTP (Nginx HTTP server) в Windows, Mac OS X или Linux, работающих с PHP 5.4 или выше. Yii 2.0 также совместим с HHVM Facebook (HHVM). Однако в некоторых особых случаях HHVM ведет себя по-другому, чем обычный PHP, поэтому вам нужно быть предельно внимательным при использовании HHVM.

На производственном сервере вы, возможно, захотите настроить свой веб-сервер так, чтобы к приложению можно было получить доступ по URL-адресу http://www.example.com/index.php вместо http://www.example.com/basic/web/index.php. Для такой настройки необходимо указать корневую папку вашего веб-сервера на папку basic/web. Возможно, вы захотите скрыть index.php из URL-адреса, как описано в разделе Маршрутизация и создание URL-адресов. В этом подразделе вы узнаете, как настроить свой сервер Apache или Nginx для достижения этих целей.

Информация: Установив basic/web в качестве корневой папки, вы также предотвратите доступ конечных пользователей к вашему частному коду приложения и к файлам конфиденциальных данных, хранящимся в каталогах-соседях basic/web. Запрещение доступа к этим другим папкам — это улучшение безопасности.

Информация: Если ваше приложение будет работать в среде совместного хостинга, где у вас нет разрешения на изменение конфигурации веб-сервера, вы всё равно можете настроить структуру своего приложения для повышения безопасности. Более подробную информацию см. в разделе Среда совместного хостинга.

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

Используйте следующую конфигурацию в файле httpd.conf Apache или в конфигурации виртуального хоста. Обратите внимание, что вам необходимо заменить path/to/basic/web на фактический путь к basic/web.

# Set document root to be "basic/web"
DocumentRoot "path/to/basic/web"

<Directory "path/to/basic/web">
    # use mod_rewrite for pretty URL support
    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

    # ...other settings...
</Directory>

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

Для использования Nginx необходимо установить PHP как FPM SAPI. Вы можете использовать следующую конфигурацию Nginx, заменив path/to/basic/web на фактический путь к basic/web и mysite.local на фактический хост для обслуживания.

server {
    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/basic/web;
    index       index.php;

    access_log  /path/to/basic/log/access.log;
    error_log   /path/to/basic/log/error.log;

    location / {
        # Redirect everything that isn't a real file to index.php
        try_files $uri $uri/ /index.php$is_args$args;
    }

    # uncomment to avoid processing of calls to non-existing 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;

    # deny accessing php files for the /assets directory
    location ~ ^/assets/.*\.php$ {
        deny all;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass 127.0.0.1:9000;
        #fastcgi_pass unix:/var/run/php5-fpm.sock;
        try_files $uri =404;
    }

    location ~* /\. {
        deny all;
    }
}

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

Также обратите внимание, что при запуске HTTPS-сервера необходимо добавить fastcgi_param HTTPS on;, чтобы Yii мог правильно определить, является ли подключение защищённым.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/guide-start-installation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API