このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
apricot:public [2020/04/26 15:49] y2sunlight [index.php - フロントプロセッサー] |
apricot:public [2020/07/10 09:57] y2sunlight [公開フォルダの作成] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | > | ||
- | |||
- | ---- | ||
- | |||
====== Apricot 公開フォルダ ====== | ====== Apricot 公開フォルダ ====== | ||
--- // | --- // | ||
行 11: | 行 7: | ||
* [[apricot: | * [[apricot: | ||
* Apricot 公開フォルダ | * Apricot 公開フォルダ | ||
- | * [[apricot: | + | * [[apricot: |
- | * [[apricot: | + | * [[apricot: |
+ | * [[apricot: | ||
- | 以下の作業はEclipseで行います。 | + | |
+ | ここからの作業は基本的にEclipseで行います。 | ||
---- | ---- | ||
===== 公開フォルダの作成 ===== | ===== 公開フォルダの作成 ===== | ||
- | 以下に示すようにプロジェクトフォルダ下に、公開用のフォルダ '' | + | 以下に示すようにプロジェクトフォルダ下に、公開用のフォルダ '' |
{{fa> | {{fa> | ||
行 30: | 行 28: | ||
| | ||
| | ||
+ | | ||
| | ||
| | ||
行 37: | 行 36: | ||
\\ | \\ | ||
- | ===== .htaccessの作成 | + | ===== .htaccess ===== |
- | アプリケーションへの全てのリクエストを1つのフロントコントローラ(index.php)で処理するために、.htaccess を以下のように編集します。 | + | アプリケーションへの全てのリクエストを1つのフロントコントローラ(index.php)で処理する為に、.htaccess を以下のように編集します。 |
{{fa> | {{fa> | ||
行 51: | 行 50: | ||
</ | </ | ||
- | この設定では、ApacheのRewriteEngineを有効にして、publicフォルダ下に実在しないファイル及びフォルダに対するリクエストを全てindex.phpに転送しています。詳しくはApacheの[[https:// | + | この設定では、ApacheのRewriteEngineを有効にして、publicフォルダ下に実在しないファイル及びフォルダに対する全てのリクエストをindex.phpに転送しています。詳しくはApacheの[[https:// |
+ | \\ | ||
- | ==== index.php | + | ===== index.php(暫定版) ===== |
- | > TODO | + | 以下にように index.php を編集します。 |
+ | {{fa> | ||
<code php index.php> | <code php index.php> | ||
+ | <?php | ||
+ | // | ||
+ | // オートローダーの登録 | ||
+ | // | ||
+ | require dirname(__DIR__).'/ | ||
+ | |||
+ | // | ||
+ | // パスの設定 | ||
+ | // | ||
+ | $project_path = dirname(__DIR__); | ||
+ | $public_path = __DIR__; | ||
+ | |||
+ | // | ||
+ | // Debug Write | ||
+ | // | ||
+ | header(" | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo "URI : {$_SERVER[' | ||
+ | </ | ||
+ | |||
+ | 今の index.php では以下の事を行っています。 | ||
+ | |||
+ | * オートローダーの登録 | ||
+ | * プロジェクトフォルダの設定 | ||
+ | * 公開フォルダの登録 | ||
+ | |||
+ | これら全ての設定は、index.phpの存在するフォルダからの相対パスで行われていいる点に注目して下さい。これは、公開フォルダとプロジェクトフォルダの関係が相対的に表現できる場所であれば、どこにでも公開フォルダを設定できることを示しています(vendorフォルダはプロジェクトフォルダの直下にあることが決められています)。 | ||
+ | |||
+ | 通常、プロジェクトフォルダはユーザからアクセスできない場所に設置されます。しかし同時に、これは必ずしもプロジェクトフォルダの直下に公開フォルダがなくてもよいことも意味しています。例えば以下のような構成も可能です。 | ||
+ | |||
+ | < | ||
+ | | ||
+ | | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | | ||
+ | | | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | === index.phpの起動 === | ||
+ | |||
+ | ブラウザ上で以下のURLにアクセスしてみて下さい。 | ||
+ | < | ||
+ | http:// | ||
+ | </ | ||
+ | |||
+ | 次のように表示されます: | ||
+ | |||
+ | < | ||
+ | project_path : D: | ||
+ | public_path : D: | ||
+ | |||
+ | METHOD : GET | ||
+ | URI : / | ||
</ | </ | ||
\\ | \\ | ||