1. Composerをインストールします
サーバーのセットアップとLinux / Unixコンソールでの作業の経験がほとんどないため、最初の問題はComposerのインストール時にすでに現れていました。 PHPのいくつかのバージョンがサーバーにインストールされており、デフォルトではコンソールコマンドはPHPバージョン5.2.17によって実行されます。 Composerには、PHPバージョン5.3.2以降が必要です。 解決策はこれでした:
php -r "readfile('https://getcomposer.org/installer');" | php5.6
サーバー設定では、Composerを実行可能にして直接実行することはできないため、PHPのバージョンを指定することを忘れずに、PHPインタープリターから起動します。
php5.6 composer.phar install
最初のステップが完了しました-Composerがインストールされました。
2. Yii2のインストール
最初に、指示に従います。bowerおよびnpmパッケージの依存関係を管理するcomposer assetプラグインをインストールします。
php5.6 composer.phar global require "fxp/composer-asset-plugin:~1.1.1"
これを行う必要があるのは一度だけです。将来的には、以下で説明するコマンドを使用してYii2を数回インストールできます。
次に、インストールするYii2テンプレートのバージョンを選択します:BasicまたはAdvanced。 Basicは単純なアプリケーションであり、Advancedはパブリック部分と管理部分(フロントエンドとバックエンド)の分離を実装し、既製のモデル(およびデータベーステーブル)ユーザーを作成します。
2.1。 Yii2 Basicをインストールする
まず、Basicのインストールを検討してください。 より簡単で、次のコマンドを使用してインストールが実行されます。
php5.6 composer.phar create-project --prefer-dist yiisoft/yii2-app-basic mysite
mysite
が
mysite
をインストールするディレクトリである場合、空である必要があります(サーバーにサイトのディレクトリを作成するときに
public_html
サブディレクトリが自動的に作成された場合、削除する必要があります)。 Composerは、Githubからのログインパスワードを要求できます(Githubからの要求数の制限のため)。
サーバーとフレームワークのディレクトリ構造に関する小さな叙情的な余談。
mysite/public_html
の仮想ホスティングは、サイトファイルが
mysite/public_html
ディレクトリに配置されるように構成されています。
public_html
ディレクトリ内のファイルには、Webからアクセスできます。
Yii2 Basicテンプレートの構造には、「コードとデータを不要なアクセスから保護する」ためにWebからアクセスできないようにすることが推奨されるいくつかのファイルとディレクトリ、およびWebサーバーのルートディレクトリとなる
basic/web
ディレクトリが含まれます。 必要な構造のために、「シンボリック」リンクを作成します。
cd mysite ln -s web public_html
これで、
basic/web
ディレクトリのコンテンツは私たちのサイトであり、他のフレームワークファイルはネットワークからアクセスできません。
Yii2 Basicがインストールされている場合、ブラウザでサイトを開くことができます。
2.1.1。 Yii2 Basicの構成
config/db.php
を開き、設定をデータベースの正しい設定に変更します。
'charset' => 'utf8',
次のようにテーブルプレフィックスを指定できます:
'tablePrefix' => 'myprefix_'
(複数のサイトが同じデータベースを使用している場合)。
次に、リンクを設定します。デフォルトでは、ルーティングの形式は
/index.php?r=site%2Fabout
、これを
/site/about
形式に変換します。 これを行うには、 オフィスで推奨されている内容の
web/.htaccess
ファイルを作成します。 ガイド :
Options +FollowSymLinks IndexIgnore */* RewriteEngine on # if a directory or a file exists, use it directly RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # otherwise forward it to index.php RewriteRule . index.php
これで、Webサーバーはリクエストをindex.phpに送信する必要があることを認識し、URLにindex.phpを指定する必要がなくなりました。 次に、
config/web.php
'db' => require(__DIR__ . '/db.php'),
後に
$config = ['components']
次の行を追加(またはコメント解除)し
'db' => require(__DIR__ . '/db.php'),
'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ ], ],
enablePrettyUrl-美しいリンクを生成し、showScriptName-index.phpスクリプト名をリンクに書き込まないでください。 これで、サイトにアクセスして、
/site/about
などの美しいリンクが既に使用されていることがわかります。
さて、Yii2 Basicで整理しました。次に、高度に進みましょう。
2.2。 Yii2 Advancedをインストールする
インストールの開始は基本に似ています:
php5.6 composer.phar create-project --prefer-dist yiisoft/yii2-app-advanced mysite
Yii2がインストールされ、Yii2ファイルとディレクトリがmysiteディレクトリに表示されました。これには、サイトの公開部分のフロントエンドと管理パネルのバックエンドが含まれます。 ただし、frontend / webにはindex.phpファイルがないため、initコマンドを実行してテンプレートを初期化し、フロントエンドのシンボリックリンクを作成します。
cd mysite php5.6 init ln -s frontend/web public_html
これで、フロントエンドがサイトのメインアドレスで利用可能になりました。 次に、バックエンドを構成します。
cd frontend/web ln -s ../../backend/web admin
バックエンドは
/admin
利用可能になりました。
フロントエンドに美しいアドレスを設定します。
- 基本テンプレートと同じ
.htaccess
を/frontend/web
に作成します - config /
/frontend/config/main.php
config //frontend/config/main.php
同じ/frontend/config/main.php
書きます
バックエンドに対して同様の操作を実行します。 途中で、
db.php
ファイルが
config
ディレクトリに
db.php
ことに気付きます。
Advancedでデータベースにアクセスするためのパラメーターは
common/config/main-local.php
で
db.php
され、Basicの
db.php
と同じように
db.php
。 次に、移行を適用します。
php5.6 yii migrate
移行テーブルとユーザーテーブルがデータベースに作成されます。
やった! Yii2がインストール、構成され、準備完了です。
使用したソース
はじめに-作曲家
Yii 2.0決定版ガイド(英語の公式Yii2ガイド)
Yii 2.0の完全ガイド(ロシア語翻訳)
Yii2 Advancedのインストール
Yii2で高度なテンプレートをインストールする方法