Ground Sunlight

Windowsで作る - PHPプログラミングの開発環境

ユーザ用ツール

サイト用ツール


apricot:public

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
次のリビジョン 両方とも次のリビジョン
apricot:public [2020/04/26 15:49]
y2sunlight [index.php - フロントプロセッサー]
apricot:public [2020/05/15 22:06]
y2sunlight [Apricot 公開フォルダ]
行 1: 行 1:
->編集中 
- 
----- 
- 
 ====== Apricot 公開フォルダ ====== ====== Apricot 公開フォルダ ======
  --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-03-24//  --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-03-24//
行 11: 行 7:
   * [[apricot:configuration|Apricot プロジェクトの作成]]   * [[apricot:configuration|Apricot プロジェクトの作成]]
   * Apricot 公開フォルダ   * Apricot 公開フォルダ
-  * [[apricot:core:base|Apricot 基本コア]] +  * [[apricot:core:top|Apricot コア]] 
-  * [[apricot:app:home|Apricot アプリケーションホーム]]+  * [[apricot:app:top|Apricot アプリ]] 
 +  * [[apricot:ext:middleware|Apricot 拡張]]
  
-以下の作業はEclipseで行います。+ 
 +ここからの作業は基本的にEclipseで行います。
  
 ---- ----
 ===== 公開フォルダの作成 ===== ===== 公開フォルダの作成 =====
  
-以下に示すようにプロジェクトフォルダ下に、公開用のフォルダ ''public'' を作成し、その下につのフォルダ(''assets'',''css'',''js'')と2つの空のファイル(''.htaccess'',''index.php'')を作成します。+以下に示すようにプロジェクトフォルダ下に、公開用のフォルダ ''public'' を作成し、その下につのフォルダ(''css'',''img'',''js'',''resources'')と2つの空のファイル(''.htaccess'',''index.php'')を作成します。
  
 {{fa>folder-open-o}} ** /apricot ** {{fa>folder-open-o}} ** /apricot **
行 37: 行 35:
 \\ \\
  
-===== .htaccessの作成 =====+===== .htaccess =====
  
-アプリケーションへの全てのリクエストを1つのフロントコントローラ(index.php)で処理するために、.htaccess を以下のように編集します。+アプリケーションへの全てのリクエストを1つのフロントコントローラ(index.php)で処理するに、.htaccess を以下のように編集します。
  
 {{fa>folder-open-o}} ** apricot/public ** {{fa>folder-open-o}} ** apricot/public **
行 51: 行 49:
 </code> </code>
  
-この設定では、ApacheのRewriteEngineを有効にして、publicフォルダ下に実在しないファイル及びフォルダに対するリクエストを全てindex.phpに転送しています。詳しくはApacheの[[https://httpd.apache.org/docs/2.4/ja/mod/mod_rewrite.html|マニュアル]]を参照して下さい。+この設定では、ApacheのRewriteEngineを有効にして、publicフォルダ下に実在しないファイル及びフォルダに対する全てのリクエストをindex.phpに転送しています。詳しくはApacheの[[https://httpd.apache.org/docs/2.4/ja/mod/mod_rewrite.html|マニュアル]]を参照して下さい。
  
 +\\
  
-==== index.php - フロントプロセッサー ====+===== index.php(暫定版) =====
  
-> TODO+以下にように index.php を編集します。
  
 +{{fa>folder-open-o}} ** /apricot **
 <code php index.php> <code php index.php>
 +<?php
 +//-------------------------------------------------------------------
 +// オートローダーの登録
 +//-------------------------------------------------------------------
 +require dirname(__DIR__).'/vendor/autoload.php';
 +
 +//-------------------------------------------------------------------
 +// パスの設定
 +//-------------------------------------------------------------------
 +$project_path = dirname(__DIR__);
 +$public_path = __DIR__;
 +
 +//-------------------------------------------------------------------
 +// Debug Write
 +//-------------------------------------------------------------------
 +header("Content-type: text/plain; charset=UTF-8");
 +
 +echo "project_path : {$project_path}\n";
 +echo "public_path : {$public_path}\n";
 +echo "\n";
 +echo "METHOD : {$_SERVER['REQUEST_METHOD']}\n";
 +echo "URI : {$_SERVER['REQUEST_URI']}\n";
 +</code>
 +
 +今の index.php では以下の事を行っています。
 +
 +  * オートローダーの登録
 +  * プロジェクトフォルダの設定
 +  * 公開フォルダの登録
 +
 +こられ全ての設定は、index.phpの存在するフォルダからの相対パスで行われていいる点に注目して下さい。これは、公開フォルダとプロジェクトフォルダの関係が相対的に表現できる場所であれば、どこにでも公開フォルダを設定できることを示しています(vendorフォルダはプロジェクトフォルダの直下にあることが決められています)。
 +
 +通常、プロジェクトフォルダはユーザからアクセスできない場所に設置されます。しかし同時に、これは必ずしもプロジェクトフォルダの直下に公開フォルダがなくてもよいことも意味しています。例えば以下のような構成も可能です。
 +
 +<code>
 + ┌── apricot [プロジェクトフォルダ]
 + |
 + ├── public [公開フォルダ]
 +</code>
 +
 +
 +<code>
 + ┌── apricot [プロジェクトフォルダ]
 + |
 + ├── html
 +    |
 +    └── public [公開フォルダ]
 +</code>
 +
 +
 +=== index.phpの起動 ===
 +
 +ブラウザ上で以下のURLにアクセスしてみて下さい。
 +<code>
 +http://localhost/ws2019/apricot/public/
 +</code>
 +
 +次のように表示されます:
 +
 +<code>
 +project_path : D:\usr\ws2019\apricot
 +public_path : D:\usr\ws2019\apricot\public
 +
 +METHOD : GET
 +URI : /ws2019/apricot/public/
 </code> </code>
  
 \\ \\
  
apricot/public.txt · 最終更新: 2020/07/10 09:57 by y2sunlight