Nov 09, 2005

Mac OS Xでオンラインショップをつくろう


 ウチの商品をいま流行のオンラインなんとかで販売できんもんかね?そんな想いをたぎらせたことがあったりします。あのAmazonみたいにマウスをカチカチやるだけで、我が社自慢の商品や、サークルのオリジナルグッツ、渾身の芸術作品をオンライン販売できないものかなぁと、捕らぬ狸の皮算用に胸を焦がしたことがあったりなかったり。
 そんなボクらの夢にこたえてくれるのが、オープンソースウェアのosCommerceです。osCommerceをMac OS Xにインストールすれば、Mac OS Xでオンラインショップを開設することができます。ハードル高そうですが、いや、これがまたビックリするほど簡単。おまけに立派すぎて、売る商品をどうしようとあわてるほどのオンラインショップを構築できます。ここではユメを現実にしてくれるosCommerceのインストール方法を考えていきます。




 こんなオンラインショップが作れてしまうんですよ。




 このページでは基本、ddo.jpでドメインを取得していることを前提として進めていきますが、実際にショップを運営するというのなら、フリーのドメインネームサービスを使い続けることは、あなたにとってもプラスにはなりません。そこだけはしっかりと気をつけましょう。


 このステップに進む前に

をすませておく必要があります。


必要なもの

  • Mac(Mac OS Xを搭載しているもの。ここは10.3.x(Panther)で進みます)
  • osCommerce日本語版(これを書いている時点ではosCommerce 2.2 MS1 日本語版)
  • mi
  • ターミナル(Terminal)アプリケーションフォルダ>ユーティリティフォルダの中にあります。
  • コンソール(console)アプリケーションフォルダ>ユーティリティフォルダの中にあります。
  • Fugu(またはRBrowser, Cyberduckなどでも)
  • MySQL
  • phpMyAdmin
  • php apache modules
  • ドメインネーム
  • ReadMeを読む心がけ
  • やる気
  • オープンソースコミュニティへの感謝
  • セキュリティーへの配慮
  • インターネットを構築してくれた方々への畏敬の念


osCommerceのダウンロード

 osCommerceは本家にあるosCommerceの日本語化に献身的に取り組んでおられる「osCommerce 日本語化プロジェクト」さんらのページからダウンロードさせてもらいます。

  1. 「osCommerce 日本語化プロジェクト」さんらのページにいきます。



  2. トップページなかほどにある「osCommerce日本語版のダウンロード」をクリックしてダウンロードページに移動します。




  3. ダウンロードページに移動します。ここで注意がいります。「osCommerce2.2日本語版」と表示されますが...今回ダウンロードしていきたいのはこのバージョンではないものでいきます。




    このファイルはダウンロードせず...


  4. 少し上にスクロールしてください。

    かちかちかちかちと。


  5. すると、osCommerce2.2 MS1 日本語版というのが見つかるはずです。ここではこのバージョンのものをつかってオンラインショップを構築していきたいと思います。





  6. ファイル名をクリックしてダウンロードを開始します。ダウンロードするのは"oscommerce-2.2ms1j-R6a.tar.gz"です。


    若干バージョンが変わってくるかもしれません。


  7. sourceFORGE.jpに飛びますので、適当なサーバーからダウンロードを実行します。



    ダウンロードを実行するとページが変わります。しばらく待つと自動的にダウンロードが始まります。




  8. ダウンロードが終了すると、StuffitExpanderがあれば、StuffitExpanderが自動的に解凍をしてくれるはずです。もし自動的に始まらなければ、自分でダブルクリックをして解凍してください。

    StuffitExpanderのバージョンによっては正しくファイルネームを解凍できていない場合がありますので注意。特にロングネームのファイルを正しく解凍できません...でした。ボクだけ?


  9. ダウンロードと解凍が終了すると以下のファイルができているはずです。



osCommerceの設置

 インストールといってもマウスでSiteフォルダに移動させるだけです。/Library/Webserver/Documentsか/Users/ユーザー名/Sitesかのどちらかになります。どちらでもイイですURLが違うだけですので、今後どちらが自分にとってよいのか考えた上で決めてください。(http://自分のドメインネーム/またはhttp://自分のドメインネーム/~ユーザーネーム/ということです。実際にお店として運営していくのなら/Library/Webserver/Documentsにおいた方がURLがすっきりしますよね)

 ここでは例として/Users/ユーザー名/Sitesにインストールしていきます。

  1. osCommerceのフォルダを開きます。





  2. この中の"admin"と"catalog"という名前のフォルダをホームフォルダのSitesの中に移動させます。(自分がショップを開きたい場所に移動させてください。http://あなたのドメインネーム/ショップのアドレス/にしたいなら/Library/Webserver/Documentsの中にします)




  3. インストールはこれで終了です。もしフォルダの名前を変えたいなら今のうちに変えておくと良いです(ただし英語のみ)。たとえばadminフォルダをkanriのように。admin以外の名前にしておくとセキュリティが少し高くなります。



MySQLにosCommerce用のユーザーを作る

osCommerceはデータの管理にMySQLを使います。なのでMySQLにosCommerce用のユーザーを作っておく必要があります。すでにユーザーをつくっている人はこのステップは必要ありません。

  1. safariからphpMyAdminをひらきます。



  2. 特権をクリックします。



  3. 特権を設定するページになります。



  4. "ユーザーの追加する"をクリックします。



  5. "ユーザーの追加する"ページになります。



  6. ユーザー名、ホスト、パスワードを入力します。ここではユーザー名をhogehoge、パスワードをtsukaitaipasswordと入力してあります。

    ホスト名はポップアップから「ローカル」をえらべば自動的に入力されます。


  7. グローバル特権を設定します。SELECT, INSERT, UPDATE, DELETE, FILE, CREAT, ALTER, INDEX, DROP, CREATE TEMPORARY TABLESにチェックをつけておきます。



  8. 実行するを押します。




  9. "ユーザーを追加しました"とでますので、これでphpMyAdminでの作業は終了です。




osCommerce設定ファイルのアクセス権変更

adminフォルダ、catalogフォルダそれぞれの中にあるconfigure.phpのアクセス権を変更します。configure.phpはosCommerceをただしく動かすのに必要な情報が書き込まれるファイルです。たとえばサイトのURLはなんなのか、SSLをつかうのか、データベースは何を使うのかなどです。こうした情報は、この先のインストール実行でosCommerceが自分自身で書き込んでくれるのですが、このときファイルのアクセス権が「書き込み可」になっていないと、正しくインストールできないよと警告が出ます。

  1. Fuguを起動させます。


  2. ホームディレクトリが表示されますから、サイトフォルダをクリックして開きます。



  3. 次にcatalogフォルダを開き、さらに中からincludesフォルダを探して開きます。

    catalogフォルダをダブルクリックして開く。


    えーと、includes...includesっと。お、発見発見。


  4. includesフォルダの中からcofigure.php探し出します。

    見つけたら選択。

  5. infoボタンを押して、configure.phpの情報を見ます。




  6. 下の方にある"Octal Mode Representation:"を0777に変更します。入力したら忘れずにApplyを押します。

    これを

    これに変更。


    忘れずにApplyを押す。


  7. これでcatalogフォルダ側のconfigure.phpの設定は終了です。


  8. 同様にしてadminフォルダ側のconfigure.phpの設定もおこなってください。



PHPの環境設定

 osCommerceをMac OS X (Panther)で正常に動作させるにはPHPの環境を変更する必要があります。なんだかドキドキです。慎重にやっていきましょう。php.iniというファイルを変更していきます。Entropy PHPをインストールした場合、php.iniというファイルは/usr/local/php/lib内に作成されています。

  1. Finderのメニューから「フォルダへ移動...」を選んで、/usr/local/php/libを開きます。







  2. "php.ini"をデスクトップにドラッグアンドドロップします。アクセス権の関係で自動的にコピーが実行されます。





  3. かならずどこかにもう一つバックアップとして編集する前のphp.iniをコピーしておきます。編集に失敗したときに役立ちますから。

    ファイルに日付などをつけておくと後でわかりやすいです。


  4. php.iniをmiで開きます。






  5. "register_globals = Off"と書いてある行を探します。お使いの環境にもよりますが、380行目あたりにあるはずです。



  6. この"register_globals = Off"をOnに変更します。

    register_globals = Off



    register_globals = On

    に変更する。



    すでにOnになっていたらそのまま先に進みます。


  7. とりあえず"register_globals = On"に変更するとosCommerceは最低限動作するようになりますが、ここではもう少し設定をしていきます。自分には必要ないという場合はここからのステップは飛ばしてください。(ただし設定をすると、逆に文字関係のトラブルが起きることもあります。Blogなどを同じサーバーで動かしたりしていると、そちらに影響が出たりするかもしれません。もしおかしくなった場合は、ここから先の設定を元に戻したり、変更したりして、落としどころを探してください)


  8. 次に"mbstring.language = Japanese"という部分を探してください。だいたい1038行目ぐらいにあると思います。この行の行頭にある ; を削除します。

    ;mbstring.language = Japanese



    mbstring.language = Japanese

    に変更する。




    に。




  9. 同様の要領で、次の行の行頭にある ; も削除します。また、1050行目と1057行目については後ろも修正します。

    1043行目 ;mbstring.internal_encoding = EUC-JP
    1046行目 ;mbstring.http_input = auto
    1050行目 ;mbstring.http_output = SJIS
    1057行目 ;mbstring.encoding_translation = Off
    1061行目 ;mbstring.detect_order = auto
    1065行目 ;mbstring.substitute_character = none;

    を以下に変更する。

    1043行目 mbstring.internal_encoding = EUC-JP
    1046行目 mbstring.http_input = auto
    1050行目 mbstring.http_output = EUC-JP
    1057行目 mbstring.encoding_translation = On
    1061行目 mbstring.detect_order = auto
    1065行目 mbstring.substitute_character = none;






  10. ここまでの設定が終了したら保存を実行します。



  11. 保存がすんだら、php.iniファイルを/usr/local/php/libに書き戻してあげます。

    ドラッグアンドドロップで書き戻し。


    警告が出ますが認証を押して先に進みます。


    ファイル移動の準備が始まります。置き換えるを押して先に進みます。


    認証を求められますので、名前とアカウントを入力してOKを押します。


    コピーが始まります。あっという間に終わります。


  12. 次に今書き戻したphp.iniのアクセス権を確認します。Finderのメニューから情報を見るを実行します。



  13. 所有者とアクセス権を開きます。グループをstaff/読み出しのみ、オーナーをシステム/読み書きに変更します。

    となっているのを以下に変更する。認証を求められたら対応してください。




  14. これでphp.iniの変更は終了です。忘れずにパーソナルWeb共有を一度、オン、オフして設定を読み込ませておきます。



    一度オフにしてから、もう一度オンにします。これで設定が読み込まれます。



osCommerceの起動-インストールスクリプトを実行させる-

 osCommerceのインストールスクリプトを実行します。いよいよosCommerce出陣です。この作業を完了すると、osCommerceが動くための設定やデータベースができあがり、オンラインショップとして使えるようになります。

  1. Safariを起動して、osCommerceをインストールしたURIを開きます。ここではSitesフォルダにインストールしましたので、入力するURIは以下の通りです。

    http://127.0.0.1(またはあなたのドメインネーム)/~ユーザー名/catalog/install


    私の場合を例にとると、私のユーザー名namahageのSitesフォルダにインストールされたことになるので、URIは

    http://127.0.0.1(またはドメインネーム)/~namahage/catalog/install

    となります。





  2. osCommerceのインストールが始まりました。もー、すでにここまでで感動です。こうしたソフトウェアを育ててきてくれた人々に感謝せずにはいられません。



  3. 下の方にあるNew Installボタンを押して新規インストールを実行させます。




  4. インストールに必要な設定をおこないます。「1,インストールのためのオプションを設定してください」も「2, ウェブ・サーバーに関する情報を入力してください」も基本的にほとんど変更する必要はありません。たいていはosCommerceが自動的に認識してくれています。ただし、上のステップでadminフォルダやcatalogフォルダの名前を変更していた場合は、それぞれのディレクトリ名を、忘れずに変更しておきます。



  5. 重要なのはここから。「3,データベース・サーバーに関する情報を入力してください。」です。



  6. まずデータベース・サーバーを入力します。ここでは今いじっているMacのなかで動いているMySQLを使うことになりますので、localhostまたは127.0.0.1と入力します。

    localhostでもよい


  7. 次にユーザー名を入力します。これはMySQLのユーザー名です。上記のステップでphpMyadminを使用して作成したユーザー名を入力します。

    ここでは上記の例でつくったユーザー名のhogehogeを入力。


  8. 次にパスワードを入力します。これも上記のステップでphpMyadminを使用して作成したパスワードを入力します。

    ここでは上記の例でつくったユーザー名tsukaitaipasswordと入力。伏せ字にならないので誰かに盗み見されないようにこそこそやりましょう。


  9. 最後にデータベース名を入力します。どんな名前でもかまいません。ここではmygiftとつけてみました。

    ここで入力したデータベース名がMySQLに作成されます。


  10. すべての入力がすんだら、Continueボタンを押して先に進みます。



  11. 入力した設定でデータベースへの接続がうまくいくかチェックしてくれた結果が表示されます。ここでエラーが出た場合はもどってユーザー名やパスワードなどを見直します。問題が報告されなければContinueを押して先に進みます。



  12. インポート成功ページになります。インポート成功とありますが、新規インストールなので、MySQLにデータベースを作成することに成功しました、と読み替えればよいと思います。Continueを押して続けます。





  13. Step2に進みます。ここで設定をもう一度チェックします。



  14. まず「1. ウェブ・サーバに関する情報を入力してください」から、HTTPサーバーのところに、正しいURIがはいっているか確認します。もしddo.jpのドメインネームを持っていたら、ここには

    http://あなたのドメインネーム.ddo.jp

    と入力すればよいです。ローカルでのテストなら127.0.0.1



  15. 次にHTTPSの方も設定します。「パーソナルWeb共有をhttpsで接続できるようにしよう」ができていれば、これも有効にしておくと良いです。SSL経由での接続ができるようにすることで個人情報などが漏れにくくできます。アドレスを特別にhttps用に用意しているのでなければ、上と同じで良いです。「SSLによる接続を利用する」にチェックをいれます。




  16. 下の方にある設定などは、必要に応じてオンオフしてください。設定を変更しなくても特に問題はありません。

    ここで設定し損なっても、あとでcatalog/includes/configure.phpやadmin/includes/configure.phpを直接mi等をつかって自分の手で変更することができます。


  17. Continueを押して先に進むと、設定が終了します。これでosCommerceのインストール、設定は終了しました。これだけです。これだけ。感動。



  18. 下の方にCatalogというボタンとAdministrator Toolというボタンが表示されます。



  19. Catalogをクリックするとオンラインショップに移動します。もう、感動です。

    うおー、スゲーー。

  20. Administrator Toolの方を押すとショップの管理画面へ移動します。

    はじめてのログインにはUserにadmin、Passwordにadminを入力すると入れます。





configure.phpのアクセス権変更

osCommerceをインストールして、動作させることに成功しましたが、このままではとても危険な状態で動いています。もしかしたら、悪意のある人が、かってにあなたのオンラインショップに侵入して、商品を消したり、金額を変えてしまったりするかもしれません。そんなことが起きないように、必ずこのステップを終了させてください。

  1. 先のステップで、誰でも書き込みできるようにconfigure.phpのアクセス権を変更しました。このままだと自分以外の人間が勝手に設定を変えてしまうかもしれません。そこで、自分以外の人間がconfigure.phpを変更できないようにアクセス権の変更をおこないます。Fuguを使っていきます。


  2. ホームディレクトリが表示されますから、サイトフォルダをクリックして開きます。



  3. 次にcatalogフォルダを開き、さらに中からincludesフォルダを探して開きます。

    catalogフォルダをダブルクリックして開く。




  4. includesフォルダの中からcofigure.php探し出します。

    見つけたら選択。

  5. infoボタンを押して、configure.phpの情報を見ます。



  6. 下の方にある"Octal Mode Representation:"を0644に変更します。入力したら忘れずにApplyを押します。

    これを

    これに変更。


    忘れずにApplyを押す。


  7. 同様にしてadminフォルダ側のconfigure.phpの設定も忘れずにおこなってください。



installフォルダを削除する

 再インストールを誰かに実行されて、データベースを吹っ飛ばされても困りますので、かならずinstallフォルダは削除します。

  1. catalogフォルダを開くとinstallフォルダがありますので、これを丸ごとゴミ箱にいれてしまいます。




  2. ここまでを実行すると、カタログのトップページに警告メッセージが表示されなくなります。





管理者パスワードの変更

 このステップは特に必須です。osCommerceの管理画面は、ユーザーadmin, パスワードadminで管理者画面にログインできるようになっています。このことを知っている人はたくさんいます。必ずこのアカウントを無効にするか、パスワードを変えるかしないと、大変なことになります。

  1. 管理画面へ移動します。
    http://あなたのドメインネーム(または127.0.0.1)/~ユーザー名/admin
    です。



  2. Userにadmin、Passwordにadminを入力してLoginします。



  3. とりあえず英語で何がなんだかわからないので、右上のメニューで日本語にかえてください。



  4. どれでもいいのでメニューをクリックします。とりあえずここでは適当に各種ツールをクリックしてみました。



  5. 画面が変わります。左側にメニューが開きます。その一番下に「ユーザー」とあるのを見つけてください。ユーザーをクリックします。




  6. ユーザーに関するメニューが表示されます。ここのユーザー管理を開きます。



  7. ユーザー管理画面になります。



  8. パスワード変更を押して、システム管理者のパスワードを変更します。



  9. 新しいパスワードを入力します。変更ボタンを押して完了します。



    もちろんOK


  10. パスワードを変更したという表示がでます。



  11. ここで一度ログアウトして、今変更したパスワードでちゃんとログインできるか、また古いパスワードでログインできないか確認をしておきます。


    admin/adminでログインできないかチェックしておく。


    admin/adminでログインできなければオッケー。



パーソナルWeb共有の設定-httpd.confにdefault.phpの追記-

 osCommerceのトップページはdefault.phpというファイルで構成されています。Mac OS XのパーソナルWeb共有(with EntropyPHP)ではこのdefault.phpが自動的にトップページとして認識されるように設定されていません。

  1. default.phpまで入力しないと以下のようになります。



    リストがずらーりと。


  2. そこで/etc/httpd.confファイルを修正していきます。まずシステム環境設定から共有を選んで、"パーソナルWeb共有"をオフにします。



  3. httpd.confがある場所を開きます。Finderのメニューから、フォルダに移動を選びます。




  4. "フォルダへ移動"ウィンドウが出ますので、/etc/httpd/に移動します。



  5. httpd.confが保存されている今まで不可視だったフォルダが開きます。

    いままで見えなかったフォルダです。もう少し詳しく場所をみるとこんな感じ。半透明のフォルダの下。




  6. "httpd.conf"ファイルをデスクトップにコピーします。

    ドラッグアンドドロップするだけでコピーできます。(アクセス権の関係)


  7. httpd.confファイルをもしも何かあったときのためにかならずもう一つ複製してどこかにしまっておきます。


    書類フォルダやhttpconfのバックアップフォルダとかを作ってしまっておきます。トラブルあったときに役立ちます。


  8. miエディットでデスクトップにおいてあるhttpd.confを開きます。





  9. 次のようにかかれている場所を探します。ここのDirectryIndexの最後にdefault.phpを追記します。Entropy PHPがインストールされていることが前提です。


    # begin entropy.ch PHP module activation
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    DirectoryIndex index.html index.php
    # end entropy.ch PHP module activation

    # begin entropy.ch PHP module activation
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    DirectoryIndex index.html index.php default.php
    # end entropy.ch PHP module activation


    EntropyPHPをインストールしてある場合、"DirectoryIndex index.html index.php"とかかれている行は、2箇所あります。後ろの方にある# begin entropy.ch PHP module activation"で始まる行に対して追記するようにします。



  10. ここまでがすんだら保存を実行します。



  11. 今編集したhttpd.confファイルを/etc/httpdに書き戻します。もしもう/etc/httpdフォルダを閉じてしまっていたら、前に方でやった"フォルダへ移動"で開いてください。



  12. 警告ダイアログが出ますので、びっくりしますが、気にせず"認証"を押して進みます。



  13. httpd.confの古いファイルを置き換えてもいいか聞いてきますので"置き換える"を押しましょう。



  14. 名前とパスワード(Macの)を聞かれますので、入力します。管理者パスワードですよ。



  15. コピーが無事行われるはずです。



  16. これでコピー完了です。



  17. httpd.confの情報をみます。所有者とアクセス権を以下のように変更します。

    まずグループをwheel/読み出しのみに、次にオーナーをシステム/読み書きにします。先にオーナーの方を変えるとグループの方がかえられませんので注意。認証を求められることがありますのでそのときは指示に従います。


  18. いちおうターミナルで今変更したhttpd.confが正しく設定できているかチェックします。絶対の自信があるという人は飛ばしてください。



    apachectl configtest




    Syntax OKと出れば問題ありません。ただしここで、オッケーがでても文法的にオッケーと言うだけで設定に問題がないというわけではありません。自分の設定に完璧なる自身をお持ちの方はこのステップは飛ばしてもかまいません。



  19. システム環境設定から、共有を開いて"パーソナルファイル共有"をオンにします。




  20. Safariを起動させて、URIにhttp://あなたのドメインネーム/~ユーザー名/catalogと入力してみましょう。

    ただし、今設定をした自分のMacからddo.jpのアドレスでは接続できません。なんで?とか思うかもしれませんが、よくわからない人はとりあえずそういうもんだと思っておいてください。(これを解決するにはちょっとした設定が必要なのです)。ddo.jpが有効かどうかを確かめるには職場の外にいる人にお願いするか、自宅に帰ってから、または暇な友人に電話して試してもらうことになります。

    解決するにはBINDもしくはホストネームの編集が必要なのです。どうしてもすぐに確認をしたいというときは、
    パソコンおやじさん : WWWサーバーテスト

    で接続を試してみると良いです。


    BINDの設定は以下を参考にしてみてください。
    Mac OS XでBINDを起動させよう






    とりあえずローカルでのテストなら127.0.0.1でいけます。


  21. 今度はdefault.phpナシでちゃんと表示されるはずです。



オンラインショップの動作確認

 adminページからログインして、オンラインショップの情報やデフォルトの言語、メールアドレスなどを設定してみてください。設定をしなくてはいけないところはたくさんあります。設定がすんだら、商品カタログを実際につくってみたり、注文などもするとよいです。

  1. 商品の登録をしようとすると、imagesに書き込みができないと言われたりする。こんな時は...



    imagesフォルダのアクセス権をこんな具合に変更すると解決します。




Trackback

No Trackbacks

Track from Your Website

http://earlybirds.ddo.jp/namahage/inegalog/trackback/tb.php?id=20
(言及リンクのないトラックバックは無視されます)

Comments in Forum

17 Comments