IIS への ZenCart のインストール

公開日: 2008 年 1 月 15 日 (作業者: ewoersch (英語))

更新日: 2008 年 3 月 19 日 (作業者: ewoersch (英語))

はじめに

ZenCart™ は、e コマース用のツールで、ユーザー フレンドリーなオープン ソースの無料カート システムです。このソフトウェアは、e コマースの可能性を追求する共通の目的を持ったショップのオーナー、プログラマー、デザイナー、コンサルタントからなるグループによって開発されました。

ZenCart の詳細については、http://www.zen-cart.com/(英語) を参照してください。

以下では、IIS 6 および IIS 7 上で FastCGI 拡張機能と連動するように ZenCart をインストールするための必要な手順について説明します。

IIS での FastCGI サポートの詳細については、https://www.iis.net/fastcgi を参照してください。

以下では、https://www.iis.net/fastcgi/phpon60 の説明に従って FastCGI 拡張機能と PHP ライブラリのセットアップと構成が完了していることを前提としています。

ZenCart のダウンロードと展開

まず、Zen Cart v1.3.x の安定版最新リリースをダウンロードします。この記事では、zen-cart-v1.3.7.1 を使用します。zen-cart-v1.3.7.1 は、ミラー サイト (http://sourceforge.net/project/showfiles.php?group_id=83781&package_id=171544(英語)) からダウンロードできます。

パッケージをダウンロードしたら、展開してすべてのファイルとフォルダーを C:\Inetpub\wwwroot\zencart にコピーします。

データベースのセットアップ

ZenCart のインストール手順を開始する前に、サーバー上にデータベースを作成します。さらに、データベース ユーザーを作成し、データベースに対する db 所有者アクセス許可を付与します。MySQL データベースの場合は「IIS での PHP アプリケーション用データベースのセットアップ」の説明に従ってください。このチュートリアルでは、次のデータベース情報を使用します。

  • データベース名: "zencart"
  • データベース ユーザー: "zencar"
  • アカウント パスワード: "zencart"

アプリケーションのセットアップと構成

ここでは、php.ini ファイルの Dynamic Extensions セクションで、php_mysql.dll モジュールを追加し、extension ディレクトリが正しい場所をポイントするように php.ini ファイルも更新します。以下に例を示します。
extension_dir = "./ext"
 extension=php_mysql.dll

重要: このガイドでは、例として "/zencart" フォルダーを使用します。フォルダー名 "/zencart" を使用する必要はありません。別のフォルダー名を使用するか、"ルート" (Web サイトの "ベース") にインストールする場合は指定しないようにします。

configure.php ファイルの作成

サーバー上に 2 つのファイル (特定のサーバーの設定を指定する configure.php ファイルと、配置したファイルの場所を指定する configure.php ファイル) を作成する必要があります。上記のファイルを作成したら、これらのファイルへのアクセス許可を変更します。

1. サーバー上で、/zencart/includes/dist-configure.php ファイルを見つけます。

2. このファイルの名前を configure.php に変更します。

3. サーバー上で、/zencart/admin/includes/dist-configure.php ファイルを見つけます。

4. このファイルの名前を configure.php に変更します。

5. 上記 2 つのファイルへのアクセス許可を、読み取り、実行、書き込みに変更します。これらのファイルが格納されているフォルダーを開き、ファイルのプロパティを開きます。[セキュリティ] タブで、"Internet Guest Account" に "読み取り"、"書き込み"、"変更" 権限が設定されていることを確認します。
このアカウントは通常、MACHINE_NAME\IUSR_MACHINE_NAME ... のように指定されます。

権限の設定は、表示されているファイル/フォルダーごとに行う必要があります (IUSR_MACHINE_NAME アカウントが一覧にない場合は、[追加] をクリックして、一覧からアカウントを追加し、必要なアクセス許可を設定します)。

メモ: 上記の "_MACHINE_NAME" は、サーバー管理者がサーバーの "名前を付けて" 構成した "コンピューター名" を指します。

フォルダーへのアクセス許可の設定

  • 構成ファイルと同様に、以下のディレクトリへのアクセス許可を、読み取り、実行、書き込みに変更します。

/zencart/cache
/zencart/images
/zencart/includes/languages/english/html_includes
/zencart/media
/zencart/pub
/zencart/admin/backups
/zencart/admin/images/graphs

メモ: zencart/images ディレクトリを開き、サブディレクトリとそのサブディレクトリすべてのアクセス許可を、読み取り、実行、書き込みに変更します。

/zencart/images/attributes
/zencart/images/banners
/zencart/images/categories
/zencart/images/large
/zencart/images/large/dvd
/zencart/images/manufacturers
/zencart/images/medium
/zencart/images/upload

インストーラーの実行

インテリジェントなインストーラーにより、下記の質問に対する回答が自動的に表示されます。

ただし、サーバーによって回答が異なる場合があるので、自動的に検出された回答が正しいかどうかを確認する必要があります。インストールでは、以下の情報が必要です。

物理パス
新しい Zen Cart ディレクトリへの物理パスです (例: C:\inetpub\wwwroot\zencart)。

https://localhost/zencart/install.php ページにアクセスします。このページに詳細なセットアップ手順があります。
ファイル名およびディレクトリの一覧が表示される場合は、PHP ファイル名拡張子を自動検出するようにサーバーをセットアップする方法についてホスト サイトに問い合わせます。

ようこそ
"Zen Cart へようこそ" ページでは、Zen Cart の機能の説明が表示されます。

**ライセンス
**[続ける] をクリックすると、ライセンス確認のページが表示され、GPL 使用許諾契約書の内容の確認および同意を求められます。

システムの調査
次に、インストーラーでは、Zen Cart を実行するための技術的要件を満たしているかどうかについてサーバーの調査が行われ、ホストでの解決が必要か、確認する必要がある項目が表示されます。

赤いマークや "X" 印が残った状態ではインストールを続行できないので対処が必要です。オレンジのマークまたは黄色の "警告" 記号の項目は、この時点でセットアップに適用されるかどうか不明な警告です。このドキュメントで前述した image フォルダーやその他の項目についてもここに記載されています。サーバーに変更を加える場合は、ブラウザーで [再チェック] をクリックするか、F5 キーを押して画面を更新し、変更内容を反映してから次に進みます。

システムの調査で問題がなければ (すべての項目が緑のチェックで表示されます)、画面の下にある [インストール] をクリックします。

Ff454064.image001_1(ja-jp,TechNet.10).jpg 

システム セットアップ
システム セットアップ ページでは、このドキュメントの「インストールの実行」で前述した情報をすべて入力する必要があります。

メモ: エラー メッセージが表示される場合は、上記の手順を見直し、設定漏れの項目がないかどうかを確認します。すべてのエラー メッセージで、状況に応じたヘルプがポップアップ ウィンドウで表示されます。[more info...] リンクをクリックします。

phpBB のセットアップ
次に、phpBB パスに関する情報を設定する画面が表示されます。サイトに phpBB フォーラム ソフトウェアが既にインストールされている場合は、これを有効にして Zen Cart に接続および同期することができます。これを有効にするには、phpBB ファイルがあるサーバー上のパスを指定します。たとえば、phpBB ファイルが ...public_html/forums にある場合、Zen Cart インストーラーで「/forums」と入力して、phpBB ファイルへのパスを設定します。

データベースのセットアップ
次のページでは、MySQL データベース、ユーザー名、およびパスワードに関するデータベース情報の設定画面が表示されます。ユーザー名とパスワードが設定された新規 MySQL データベースがない場合は、作成する必要があります。

Ff454064.image002_1(ja-jp,TechNet.10).jpg
 
ショップのセットアップ
e コマース ショップに関する店舗情報を入力します。
メモ: "デモ データ" 以外のすべての情報は、後ほどショップの管理画面で (再) 構成できます。

デモ データ
デモ データをインストールするには、[はい] をクリックします。
[ショップ設定を保存] をクリックすると、データベース テーブルの作成とデモ データ (選択した場合) の読み込みのため多少時間がかかります。データベース読み込みの進捗状況が表示されます。

管理者のセットアップ
管理者情報を入力して、ログイン名、管理者の電子メール アドレス、パスワードを設定します。
メモ: ログイン名とパスワードは大文字と小文字が区別されます。
 
管理者設定を保存すれば、インストールは完了です。インストール中にエラーが発生しなければ、管理画面とショップ側画面にアクセスできます。

インストール後の作業

ショップ側画面にアクセスすると、configure.php ファイルと /zc_install ディレクトリについてセキュリティ上の警告メッセージが表示されます。

**configure.php ファイルについて
**configure.php ファイルへのアクセス許可を読み取りおよび実行に変更します。
ファイルは以下の場所にあります (前述したように、ここでは例として "zencart" を使用しています。サイトによっては、フォルダー名に "zencart" を使用する場合としない場合があります)。

/zencart/includes/configure.php

/zencart/admin/includes/configure.php

指定されたフォルダーに移動し、ファイルのプロパティを開きます。[読み取り専用] チェック ボックスをオンにしてファイルを読み取り専用にします。[セキュリティ] タブで、"Internet Guest Account" に "読み取り" および "実行" 権限が設定されていることを確認します。このアカウントは通常、MACHINE_NAME\IUSR_MACHINE_NAME ... のように指定されます。"変更" 権限も付与します (IUSR_MACHINE_NAME アカウントが一覧にない場合は、[追加] をクリックして、一覧からアカウントを追加し、必要なアクセス許可を設定します)。

メモ: 上記の "_MACHINE_NAME" は、サーバー管理者がサーバーの "名前を付けて" 構成した "コンピューター名" を指します。

インストール プロセスに基づきサーバーの仕様に合わせて上記のファイルのセットアップおよび構成が行われるので、これらのファイルのコピーをサーバーから自分のコンピューターにダウンロードします。エラーや問題が発生しても、これら 2 つのファイルに少し変更を加えることでほとんどの場合は解決できます。

zc_install ディレクトリ
最後に、/zencart/zc_install ディレクトリを削除します。テストを行うだけで、再インストールする予定がある場合は、サイトを実際に運用するまで、フォルダー名を /catalog/zc_install_complete などに変更しておきます。

メモ: このヘルプ ファイルを見たハッカーが悪用する可能性があるので zc_install_complete 以外の名前を使用してください。

重要: セキュリティ上の理由から、zc_install フォルダーを運用サイトのサーバー上に残したままにしないでください。

詳細情報

IIS 6 用 FastCGI 拡張機能について意見を交換したり、不具合を報告するには、次の FastCGI フォーラムをご利用ください。
• IIS.NET / IIS 6 FastCGI フォーラム (英語)

IIS での各種 PHP アプリケーションの実行に関する詳細については、次を参照してください。
• PHP on IIS ポータル (英語)
• PHP コミュニティ フォーラム (英語)

関連コンテンツ

記事