Google
 
osCommerce
たぶねこ @ 2006年12月27日 10:03 AM

某サイトの今度のためにオンラインショップを導入することになった。

osCommerceは結構あちこちで話は聞いてたので、インストール簡単かな~?
と思ったのが間違いだった。

yahooで検索して、日本語サイト
http://www.bitscope.co.jp/tep/からインストール。

説明の通り、管理画面とカタログ2つの圧縮ファイルからadminとcatalogのフォルダが出来る。これの中で双方ともincludeディレクトリ中のconfigure.phpについては属性を変更し706にして、DBのガラを作成、catalog側のinstallを実行すると、2ページ目でエラー発生。どうやら、/install/templates/pages/install.phpの29行目で、eregがおかしいらしい・・・てかこれってパラメータ逆じゃん。正規表現が第二パラメータに入ってるよ??
これを修正すると、とりあえずエラーメッセージは消える。
次に、パラメータをセットして、次へをクリックする・・・送信はされるが、フォームに入力された内容が消えてしまう。・・・これは、POSTメソッドを処理が受け取ってない感じの動きだな~とか考えていると、どうやらosCommerceでは、register_globalsをONにする必要があるようです。
なので、htaccessで文字コード設定などと併せて設定するようにします。
すると、テーブル作成まで完了し、サンプルのカタログが表示されます。
・・・ちなみにこのプログラム「HTTP_xxx_VARS」を使ってるんですね~。
バージョンをみると2002年からは小変更のみで殆どそのままのようですし、非推奨ロジックが山になってます。

・・・本当にセキュリティは万全なのでしょうか?

さて、カタログでは、まずintallディレクトリの削除を要求されます。これはその通りなので省略して、他のページへ移動してみると、今度は/includes/classes/navigation_history.phpのunserialize関数で、エラーが発生しています。調査してみると、この関数は、/include/application_top.phpより2回呼ばれており、1回目は、配列が初期値の為呼び出されずにスルー。2回目は今度は条件が変わり、/include/function/session.phpの手p_session_is_registered関数によりsession内に指定要素が存在する場合呼び出されることになっているが、これにTRUEがセットされている為に呼び出され、関数内部で、未定義配列の操作を行ってエラーが発生しているようです。
まだ、詳しい状況はわからないので、取りあえず、1回目と同様の条件に変更してみたところエラーは回避されました。ただ、これでは呼び出されなくなっただけなので、配列内に値がセットされた際に正しい動きが行われるかが疑わしい為、保留事項に挙げておきます。
これで、とりあえずのPHPエラーは回避されました。

次は/admin側の設定をしなければいけませんが、第2回と言うことで、今回はここまで(~~)

コメントはまだありません »

コメントはまだありません。

この投稿へのコメントの RSS フィード。 TrackBack URI

コメントする

*

Copyright (c) 2007 njcFactory All rights reserved.
HTML convert time: 0.225 sec
Images is enhanced with WordPress Lightbox JS by Zeo
Powered by WordPress.