共有ホスティング環境 ==================== 共有ホスティング環境では、たいてい、構成やディレクトリ構造について、大きな制約があります。 それでも、ほとんどの場合、少し調整をすれば、Yii 2.0 を共有ホスティング環境で走らせることが可能です。 ## ベーシックプロジェクトテンプレートを配備する 通例、共有ホスティング環境では、一つのウェブルートしかありませんので、可能であればベーシックプロジェクトテンプレートを使用して下さい。 まず、[Yii をインストールする](start-installation.md) の節を参照して、プロジェクトテンプレートをローカル環境にインストールします。 そして、ローカル環境でアプリケーションが動くようにした後で、共有ホスティング環境でホスト出来るようにいくつかの修正を行います。 ### ウェブルートの名前を変える FTP またはその他の手段であなたの共有ホストに接続します。おそらく、下記のようなディレクトリが見えるでしょう。 ``` config logs www ``` 上記で `www` はウェブサーバのウェブルートディレクトリです。 別の名前かもしれません。よくある名前は、`www`、`htdocs`、`public_html` です。 私たちのベーシックプロジェクトテンプレートではウェブルートの名前は `web` になっています。 あなたのウェブサーバにアップロードする前に、ローカルのウェブルートの名前をあなたのサーバに適合するように変更します。 すなわち、`web` から `www` や `public_html` など、何であれ、あなたの共有ホストのウェブルートの名前に変更します。 ### FTP ルートディレクトリは書き込み可能 ルートレベルのディレクトリ、すなわち、`config`、`logs`、`www` があるディレクトリに対して書き込みが出来るのであれば、 `assets`、`commands` などをそのままルートレベルのディレクトリにアップロードします。 ### ウェブサーバのための追加設定 使用されているウェブサーバが Apache である場合は、次の内容を持つ `.htaccess` ファイルを `web` (または `public_html` など、要するに、`index.php` があるディレクトリ) に追加する必要があります。 ``` Options +FollowSymLinks IndexIgnore */* RewriteEngine on # ディレクトリかファイルが存在すれば、それを直接使う RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # それ以外は、index.php にフォワードする RewriteRule . index.php ``` nginx の場合は、追加の構成ファイルは必要がない筈です。 ### 必要条件をチェックする Yii を走らせるためには、あなたのウェブサーバは Yii の必要条件を満たさなければなりません。 最低限の必要条件は PHP 5.4 です。 必要条件をチェックするために、`requirements.php` をルートディレクトリからウェブルートディレクトリにコピーして、 `http://example.com/requirements.php` という URL を使ってブラウザ経由で走らせます。 後でファイルを削除するのを忘れないでください。 ## アドバンストプロジェクトテンプレートを配備する アドバンストプロジェクトテンプレートを共有ホストに配備することは、ベーシックプロジェクトテンプレートを配備するのに比べると少しトリッキーにはなりますが、可能です。 [アドバンストプロジェクトテンプレートのドキュメント](https://github.com/yiisoft/yii2-app-advanced/blob/master/docs/guide-ja/topic-shared-hosting.md) で説明されている指示に従って下さい。