共有ホスティング環境では、たいてい、構成やディレクトリ構造について、大きな制約があります。 それでも、ほとんどの場合、少し調整をすれば、Yii 2.0 を共有ホスティング環境で走らせることが可能です。
通例、共有ホスティング環境では、一つのウェブルートしかありませんので、可能であればベーシックプロジェクトテンプレートを使用して下さい。 まず、Yii をインストールする の節を参照して、プロジェクトテンプレートをローカル環境にインストールします。 そして、ローカル環境でアプリケーションが動くようにした後で、共有ホスティング環境でホスト出来るようにいくつかの修正を行います。
FTP またはその他の手段であなたの共有ホストに接続します。おそらく、下記のようなディレクトリが見えるでしょう。
config
logs
www
上記で www
はウェブサーバのウェブルートディレクトリです。
別の名前かもしれません。よくある名前は、www
、htdocs
、public_html
です。
私たちのベーシックプロジェクトテンプレートではウェブルートの名前は web
になっています。
あなたのウェブサーバにアップロードする前に、ローカルのウェブルートの名前をあなたのサーバに適合するように変更します。
すなわち、web
から www
や public_html
など、何であれ、あなたの共有ホストのウェブルートの名前に変更します。
ルートレベルのディレクトリ、すなわち、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 を使ってブラウザ経由で走らせます。
後でファイルを削除するのを忘れないでください。
アドバンストプロジェクトテンプレートを共有ホストに配備することは、ベーシックプロジェクトテンプレートを配備するのに比べると少しトリッキーにはなりますが、可能です。 アドバンストプロジェクトテンプレートのドキュメント で説明されている指示に従って下さい。