
| ・ |
ドキュメントセンターを初めてご利用する方や運営方針についての基本的な姿勢をご覧になりたい方へ。
|
| ご利用の皆様から多く寄せられる質問にお答えしています。 |
|
| ・ |
ディーエーオフィスなどが利用する用語に関する解説を行います。
|
|
|
 |
 |  |
アプリケーションフレームワークのファイルパス指定 |
アプリケーションの所在については、各サーバ毎に位置が異なるため管理方法を統一するために模索を行ってきましたが、.htaccessにてsetenvすることで対応する方針をまとめましたので報告致します。
この方法は、あらかじめ.htaccessファイル上で環境変数を設定し、必要なデータを各サイト側で持たせるものです。現在までの方法では、一番最初に読み込む外部ファイルをフルパスで記述してきましたが、サーバ毎に若干位置が異なることからサイトを移転した際に動作しなくなるといった不具合が出ていました。また、これらの修正は各ファイル毎に必要であり、修正箇所がアプリケーションを採用するすべてのファイルが対象となることも問題です。しかしながら、フルパスによる指定が必要とされていることから、各サーバにアプリケーションを設置した際に出来る限り同じ方針を採用して埋め込むことができるという観点からも、この方法を一貫して採用していました。
.htaccessファイルで環境変数を設定する場合は、設定が各サイトにおいて1つのファイルで済む上、サーバ環境によって禁止されるようなことが少ないことから採用しました。
この新しい方針に従ってアプリケーションを整備していきます。新旧の方針が混在した場合においても、現状で問題なく動作しているアプリケーションに不具合は出ませんのでご安心下さい。
---
置き換え手順
[旧コード]
require_once "/home/daoffice/settings/init/global.phtml";
require_once "./settings.phtml";
↓
[新コード]
require_once getenv("ASF_ROOT")."/init/global.phtml";
require_once getenv("SITE_ROOT")."/settings.phtml";
ASfおよびスマートストアなどのコード体系を採用しているサイトには、旧コードで示したrequire_onceで必要な外部ファイルを読み込んでいます。このとき、読み込まれるファイルの所在は各ファイルやサーバ毎に異なります。例えば、global.phtmlにおいては、/usr/homeといった文字列で始まる例、settings.phtmlでは、../../といった指定をした例などがあります。
新コードでは、一律上に示したコードのみの記述で統一します。ここでのパス確認が不要になった分、.htaccessファイルでは次の記述を行い、settings.phtmlがあるディレクトリと同じ位置にファイルを置く必要があります。.htaccessファイルはサイトに1個が必要で、複数置く必要はありません。また、.htaccessファイルを複数置かないといけない場合でも、settings.phtmlと同じディレクトリへ置く.htaccessファイルのみに以下の記述をするだけで良いです。
.htaccess
---
SetEnv ASF_ROOT "/home/daoffice/settings"
SetEnv SITE_ROOT "/home/daoffice/www"
---
|
| 文書番号 |
00812 |
| 日付 |
2004.04.16 |
| 参照数 |
599 |
|