Ground Sunlight

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

ユーザ用ツール

サイト用ツール


slim:4:install

差分

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

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

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
slim:4:install [2020/10/01 13:23]
y2sunlight [プロジェクトの配置]
slim:4:install [2020/10/07 21:19] (現在)
y2sunlight
行 1: 行 1:
-====== Slim4 インストール ======+====== Slim4 インストール ======
 Version 4.5.0 Version 4.5.0
  
- --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-03-05//+ --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-09-23//
  
 [[slim:top|Slim に戻る]] [[slim:top|Slim に戻る]]
行 8: 行 8:
 関連記事 関連記事
  
-  * Slim4インストール +  * Slim4 インストール 
-  * [[slim:4:basic|Slim4の基本的な使い方]]+  * [[slim:4:concepts|Slim4 コンセプト]] 
 +  * [[slim:4:request|Slim4 リクエスト]] 
 +  * [[slim:4:response|Slim4 レスポンス]] 
 +  * [[slim:4:routing|Slim4 ルーティング]] 
 +  * [[slim:4:middleware|Slim4 ミドルウェア]] 
 +  * [[slim:4:cookbook|Slim4  クックブック]]
  
 リンク リンク
行 160: 行 165:
  
 === public ディレクトリー === === public ディレクトリー ===
-公開用のディレクトリーです。ここにSlimのフロントコントローラ( ''index.php'' )があります。また''.htaccess'' もここに配置します。+公開用のディレクトリーです。ここにSlimのフロントコントローラ( ''index.php'' )を配置します。また ''.htaccess'' もここに配置します。
  
 === vendor ディレクトリー === === vendor ディレクトリー ===
行 169: 行 174:
 ===== テストプログラム ===== ===== テストプログラム =====
  
-以下テストプログラム( index.php )を示します。このサンプルは、[[https://github.com/slimphp/Slim|Githubのサンプル]]を少し変更したものです。+以下テストプログラム( index.php )を示します。この例題は、[[https://github.com/slimphp/Slim|Githubのサンプル]]を少し変更したものです。
  
 {{fa>folder-open-o}} ** /your-project/public/ ** {{fa>folder-open-o}} ** /your-project/public/ **
行 216: 行 221:
 === オートローディング === === オートローディング ===
  
-> TODO:+''index.php'' でまず最初にしなければならないことは、composerのオートローダ( ''autoload.php'' ) を require する言です。オートローダのパスはindex.phpからの相対パスで行います。
  
 <code php> <code php>
 require __DIR__ . '/../vendor/autoload.php'; require __DIR__ . '/../vendor/autoload.php';
 </code> </code>
 +
 +これを行うことだけで、Slimをはじめとする全ての composerによって管理されているライブラリーのクラスを使用できるようになります。
  
 === ベースパス === === ベースパス ===
行 237: 行 244:
  
 但し、ベースパスがドキュメントルール( ''<nowiki>'/'</nowiki>'' )の場合は、ベースパスを空文字(''<nowiki>''</nowiki>'')にする必要があります。これはルーティングの設定( ''get()''など )がドキュメントルートからのパスを設定しているからです。また、''dirname('/index.php')'' は Winodws処理系において ''<nowiki>'\'</nowiki>'' を返すので、''<nowiki>'\'</nowiki>'' を ''<nowiki>'/'</nowiki>'' に置換する必要があります。 但し、ベースパスがドキュメントルール( ''<nowiki>'/'</nowiki>'' )の場合は、ベースパスを空文字(''<nowiki>''</nowiki>'')にする必要があります。これはルーティングの設定( ''get()''など )がドキュメントルートからのパスを設定しているからです。また、''dirname('/index.php')'' は Winodws処理系において ''<nowiki>'\'</nowiki>'' を返すので、''<nowiki>'\'</nowiki>'' を ''<nowiki>'/'</nowiki>'' に置換する必要があります。
 +
 +\\
  
 ===== Slimの起動 ===== ===== Slimの起動 =====
行 274: 行 283:
 ==== Apacheからの起動 ==== ==== Apacheからの起動 ====
  
-SlimをApache環境下で実行するには、''.htaccess'' で、アプリケーションの全てのリクエストが ''index.php''集中するように ''rewrite'' を設定します。+SlimをApache環境下で実行するには、''.htaccess'' を ''index.php'' と同じディレクトリー配置します。
  
 <code - .htaccess> <code - .htaccess>
行 283: 行 292:
 </code> </code>
  
-この設定は、ApacheのRewriteEngineを有効にして、publicフォルダ下に実在しないファイル及びフォルダに対する全てのリクエストをindex.phpに転送します。詳しくはApacheの[[https://httpd.apache.org/docs/2.4/ja/mod/mod_rewrite.html|マニュアル]]を参照して下さい。+この設定は、ApacheのRewriteEngineを有効にして、''index.php'' が配置されているディレクトリー配下に実在しないファイル及びディレクトリーに対する全てのリクエストをindex.phpに転送します。詳しくはApacheの[[https://httpd.apache.org/docs/2.4/ja/mod/mod_rewrite.html|マニュアル]]を参照して下さい。 
 + 
 +通常、SlimプロジェクトをWebサーバーに配置する場合、ドキュメントルート( 例えば ''/public_html'' とする)の外側にプロジェクトディレクトリーを配置します。例えば、以下のように配置するとします。 
 + 
 +<code> 
 + | 
 + ├── your-project [プロジェクトディレクトリー] 
 +    | 
 +    └── vendor 
 + | 
 + └── public_html [ドキュメントルート] 
 +      | 
 +      ├── index.php 
 +      └── .htaccess 
 +</code> 
 + 
 +この場合、''index.php'' 内のオートローディングは以下のようになります。 
 + 
 +<code php> 
 +require __DIR__ . '/../your-project/vendor/autoload.php'; 
 +</code>
  
 +このように、''index.php'' の配置場所(即ち、アプリケーションのURI)に応じて、オートローディング( ''autoload.php'' )の相対パスを変更する必要があります。言い換えると、オートローディングの設定を変更するだけで、ドキュメントルート以下の任意の場所に ''index.php'' を配置する事ができます。勿論、プロジェクトディレクトリーの構成を変更することなく、ApacheのAlias設定でアプリケーションのURIを変更する事もできます。
  
 \\ \\
  
slim/4/install.1601526220.txt.gz · 最終更新: 2020/10/01 13:23 by y2sunlight