嗚呼、再起動

 学校の授業が一段落し、整体以降体調も良いので週明けは昼前から事務所に行ってネットの工事やosCommerceのカスタマイズをしました。 いやぁ、陽の高いうちにスクリプティングの仕事をするなんて、なんて健康的なんでしょ。
 
 osCommerceのカスタマイズ=PHPとHTMLなわけですが、この仕事、最初に打診を受けたときには時間に余裕がなかったり、頭の冴えがなかったりで「神が降りてきませんでした」と断った経緯があります。 しかし、他の業者に見積もりを依頼したら文字通り桁違いの金額が提示されたとかで、ハードルが低くなって再打診されたものです。
 ハードルが低くなったとは言え、先方の一番重要視するカスタマイズには四苦八苦。
 最近冴えが光っているので何とかなるはずなんだけど、とふとアイデアが閃きましたが、結果は失敗。 おっかしいなぁ、考え方はこれで良いはずなのに。
 
 要は一つのページに二つのフォームを埋め込むカスタマイズ。
 言葉で説明すると、フォーム1とフォーム2に分け、それぞれ<form>〜</form>で区別してあります。 にもかかわらずフォーム1でsubmitしているにもかかわらずフォーム2の数値が送信されてしまっています。
 う〜ん、おかしい。おかしい。
 
 昼過ぎから始めたのにいつのまにか陰りゆく事務所。 ああ、神は何処へ...
 そうこうするうちに、全くいじっていない部分の画像が表示されなくなってきました。 あれ?と思ってブラウザを再起動するとその問題は解決。 もしやと思って先のフォームを試してみると、ちゃんと1と2で別々に動作しているではないですか。
 いえ、サーバーアプリ関連はブラウザの挙動を常に疑って、再起動がつきものというのは身をもって体験しているはずなのに、熱くなっていつの間にか忘れちゃうんですよね、これ。 果たして何時間無駄にしたのか。
 
 パソコン黎明期はともかく、特にMacの世界ではUNIXベースになってから非常に安定していて、再起動という儀式に罪悪感すら抱くようになった今日この頃、先のファックスモデムのトラブルといい、なんだ結局まだその程度なのかい>おまえら、という感じです。

| | コメント (0)

たまには再起動

 先日会社のwebサーバーのPHP4を再コンパイルしたらosCommerceの実験サイトが停止してしまいました。
 無様にも画面にはPHPのエラーコードが表示され、原因はmySqlと連携が取れなくなったということがすぐに判明。

 あれ? これ以前にも見たエラーやな、と思って考えたらPHP5をコンパイルしたときのメッセージ。 テキストデータにしてあるコンフィギュアオプションを調べたら、今回の4の再コンパイル時の文字列に5の時のものが混じっていたことを突き止めて、またまたコンパイル。
 
 無事osCommerceは立ち上がったものの、お次はページ内のイメージタグが全てhttpsで配信されて表示されないエラーが。
 あれ?これも以前体験したエラーやな、と気付きつつ、既に自分の第二の記憶野であるこのblogを探すと、あった
 
 これがいつまで経ってもnamahageさんのサイトに頼っており、文字列もコピー&ペーストしているために、有効期限がnamahageさんが書かれた365日の例文のまま作成しています。
 だから毎年この季節になるといつも期限切れとなり、記憶が消えている私はいつもこの時期にこのトラブルに悩まされるのでした。
 
 これではいかん、と今度は日数延長を試みるも、ミスをしたりして結局また365日に。 程度低いわ>自分
 ともかく注意深くセットして、あれ? SSL通信は復活しているのに相変わらず画像のみhttps配信されたままです。
 
 あれれ? これはどこにもメモってない。 あれ?こんな大きなエラーなのに? このエラーも以前自分で解決しているのに... 
 久々にosCommerceのスクリプトをデジャヴデジャヴ...とつぶやきながら開いたり、都合一日ほど必死で考えるも、解決策が思い出せません。
 
 そこでふと「こんなわかりやすいエラーなのにどこにもメモを残していないというのは、よほどあほらしいか、初歩的な方法で直ったからじゃないか?」と思うように。
 初歩的?... 
 
 とApacheじゃなくマシンそのものを再起動してみました。
 問題解決。 なんじゃ、そんなことやったんかい!
 
 サーバーは基本的にハードの再起動をさせたくないのと、サーバーアプリ類自体も自身のソフト的再起動だけでリフレッシュできるようになっているので、なかなか盲点でございました。

| | コメント (0)

塩漬け四年もの

 相変わらずのosCommerceのカスタマイズでなかなかblogの更新まで頭が回りません。(というか、学校に行く以外はずっとこればっかりなので発想が硬直化している、とも)
 
 さすがにこれだけやると随分手慣れて来たと言うか、不具合を見つけても大体の見当がつくようになり、顧客が見る部分はほぼ完成したという所まで来ました。
 後は管理部門ですが、これもEasyPolulateのカスタマイズも基本的な所は終わり、あとは細かいfixを残すのみとなりました。
 
 ということで、GPLライセンスの精神からどこかでこれを公開しなければならないのですが、以前にも書いたようにここではちょっと場違いでもあり、以前から持っていた個人のホームページ上で展開する事に。
 ただ、双方向はあっちでは無理ですので、適当に根っことなる発言をここで書いて、コメントがもしある場合はこのblogのその根っこ発言で扱うようにしました。
 
 では、とホームページを更新しようとしたら、何と四年間も放置、塩漬けしていたんですねぇ...
 これではいかんとずっと思いつつ、ついつい楽なこちらのblog更新にかまけていたせいとは言え。
 
 このデザインを見て私のデザイン能力と思われるのも嫌ですが、かと行って今更大掛かりな改造もする時間も無く、恐らくずっとこのレイアウトで行くと思います。 もろweb1.0の遺産。
 まぁ、本音として既にwebのグラフィックデザインは冗談抜きで若いもんにかなわないと思っています。 紙ものはまだ何とか太刀打ちできるんですけどねぇ。
 
 ということで、本論に入る前の前書きのようなものから始めました。
 偉そうに書いていますが、私が本格的にサーバーをいじる様になって二年、PHP+MySQLを本格的に勉強するようになってたったの数ヶ月で学んだ事を書いてありますので、これからPHP+MySQL+Apacheでwebアプリを作ろうとする人にはささやかにでも役に立てるかと思います。
 
 とは言っても軟弱ものの私はゼロからコードを書けるわけも無く、オープンソースのカスタマイズが主です。 でもosCommerceにせよ、OpenPNEにせよ今から自分が書き起こして勝るものを書くことは不可能ですから、カスタマイズというのもこれからは一つの大きなデザイン(設計と言う広義)の道になるのではないかと感じています。

| | コメント (2) | トラックバック (0)

この夏の個人的大人の宿題

 と、夏休みも事実上カウントダウンの状態ですね。
 私立の息子は既に金曜日から学校に。
 
 で、この夏休みは何をやっていたかというと、ずっとosCommerceのカスタマイズをやってました。
 例年、この時期になると「あぁ、あれをやるはずだったのに」と後悔するのが常ながら、今年は「まぁまぁ、よくやったほうじゃないの?」という感じです。
 
 osCommerceの何をしていたかというと、簡単に言うと商品のグループ表示化です。
 osCommerceは基本的に商品単位で表示し、オプション選択をそれにつける、という形態で、パソコンの部品やDVDなどを販売する時にはこれで全く問題はありません。

 ところが衣服類(靴なんかもそうかなぁ)だと、一つの商品にサイズと色のバリエーションがあって、それぞれ三種類あれば9つの商品を登録します。
 そうすると、デフォルトの画面上の「新着商品」に基本的に同じ商品群がずらっと9個並ぶ事になり、お客に取っては良い迷惑。 
 しかし、バリエーションごとの商品登録もしないと、今度は在庫をそれぞれ管理できなくなるので、例えばMはあるけど、Lの注文が来たら在庫切れ、というトラブルになります。
 
 ということで、いくらバリエーションがあっても表示されるのは一つのグループとして表示され、商品は在庫も含めてバリエーションごとにきちんと管理もできるようにしたわけです。
 
 な〜んて事を書いてもosCommerceを知らない人にとっては全く「?」な話でしょうが、一口に上のような仕様変更と言っても、ほぼ全ての部分に手を入れなくてはならないし、データベースには新たなテーブルは作らなくてはいけないし、と思ったより大変な作業でした。
 「できた」と思ってもあちこちクリックすると思わぬエラーに遭遇して、日々それを潰すという地味〜な作業の夏の日々。
 
 何よりPHPもMySQLも自己流で覚えたのと、オープンソース系のカスタマイズは、他人の書いたコードを読み解いていく事から始まるので最初のうちは「こりゃ無理かな」とすら思っていたので、それなりの達成感はあります。
 
 調子こいて詳細検索の部分もオリジナルには無い項目を入れたり、在庫のあるものから検索するなどを加えたりしましたので、ご興味がある方はこちらのサンプルをご覧になってみてください。
 以前ここでも紹介した携帯版の方のサンプルはこちらで、データベースはパソコン版の方と共用になっています。 ただ、テーブル表示はFOMAやWINで無いと無理なようで、今後の対応を決めなくては...
 
 GPLライセンスの考え方からすると、こんなカスタマイズでも公表しないといけないんでしょうね。 と、言ってもここじゃあまりに専門的すぎるので、落ち着いたらどこかのホームページででも紹介したいと思います(って、走り書きみたいなもんですけど、多分)
 
 さて、これで終わりかというと、次はお客様には見えない部分の裏方の方で、商品の一斉アップロード化としてEasyPopulateのカスタマイズに取りかかっています。
 ただ、これも当然というかなんと言うか、思う通りの仕様ではない訳で、またカスタマイズ地獄が待ち受けています。 とりあえずは2300行ほどあるPHPのコードを読む事から始めないと...
 
 成功したら、上記のサンプルページにずら〜っと多彩な商品が並んでいると思います。
 まぁ、ここまで来たんだから何とかなるでしょうけど...

| | コメント (0) | トラックバック (0)

PHP4.3.11のお守り(リローデッド)

 このシリーズは二作で終わるはずだったのですが...
 
 昨日
 >>今後、他のサーバーに移植する時に同じ事を繰り返すのは避けたいので、
 >>OS X独自のInstall Packageにすることに。
 
 なんて偉そうなことを書き、作成したPackageを別の離れたところにあるOS Xサーバーにリモート経由でアップロード。 ダブルクリックしたら...
 
 「あきまへん」
 
 「やっぱりな〜、そんなうまく行く訳がないか...」
 
 技術不足ですねぇ...
 packageに限らず、rpmや各種ディストリビューションを作って配布する人たちの技術って並じゃないと思わず床に崩れました。(嘘)
 
 とはいえ、とにかくパッチは当てなくてはならない訳で、結局たまたま別件で学校に行ったついでにこちらのサーバーにもDeveloper's Kitをインストールしました。
 ただ、rpmをOS Xに入れる(OS X Workshop)にはX11環境が必要で、こちらはインストールCDからのブートが必要になるなど、下手するとドツボにはまりそうな予感がしたので気休めにX11のSDKだけを入れる事に。
 ついでにサーバーラックのエアフィルターを掃除したりして帰宅。
 
 久々に勝った阪神巨人戦を見た後、夜半から事務所からのリモートでまずはConfigureすると...
 出た出た、libjpegが無いとかのライブラリ欠乏症。(今回はSDKキットの-lなんとかが見当たらない、というメッセージは出ませんでした。 Developer's Kitをインストールする時に何か落ち度があったのでしょうね)
 先日の例ではこれはrpmのインストールで解決したものの、上記のようにこのサーバーにはX11がないし、これ以上サーバーの中をごちゃごちゃにしたくない。
 とはいえ、OpenPNEやosCommerceにはGDを入れなくてはならず、その為にはこれらのjpeg、png、gif周りのライブラリは必須だけに、しばし沈考。
 
 結局、すでにコンパイルに成功したマシンに入っているライブラリ類を力技で今回のサーバーにコピ−することにしました。 なんて醜い技なんでしょう。 なんて力技なんでしょう。
 
 でも理論的にはrpmを解凍して正しいところに入っているファイル群なので大丈夫なんじゃなかろうか、とやってみたら、なんと、Configureからmake、make installまであっさり終わりました。
 確認してもちゃんとビルドの日付は今日になっているし、試験的に入れてあるOpenPNEもちゃんと動いている。
 う〜〜ん、決して美しくないけどとりあえず元気なうちの娘みたいなもんかぁ、と現状追認することに。
 
 今回もなんとか目的は達成できたので及第点とはいえ、しかし奥が深いですねぇ。
 市販ソフトの開発者の苦労が少しはわかったような気がしました。
 
 さて、次は一転してosCommerceのSQL文の大幅改造じゃ...
 
 あ、次回はふつ〜の話題を書くつもりです。

| | コメント (0) | トラックバック (0)

PHP4.3.11のお守り(おもり)#2

 そういえば一年程前もPHPのビルドやったなぁ、と辛いトラウマを思い出しながら、make画面をぼーっと見ていると、またまた(※1)と似た、
 「ld: can't locate file for: -lbundle1.o」(※3)というエラーメッセージ。
 実は昨日の記事の(※1)の時には何故か気がつかなかったのですが、この頭についている"-l"というのがくせ者で、このまま開発マシン中を検索しても何も見つかりません。
 悩みつつDeveloper/SDKs/MaxOSX10.3.0.sdk/usr/lib/usr/libを眺めていたら、"-l"の無い"bundle1.o"がある事に気がつき、試しに/usr/libに入れてみたら、今度は無事make終了。
 
 これでやっとめでたくインストール可能なバイナリとなったわけです。
 しかし、これまでの作業で、開発用サーバーの内部は、Developer's kitやrpm対応のOS X Workshopなどのインストールでかなりファイルやフォルダー類が増えてしまいました。
 今後、他のサーバーに移植する時に同じ事を繰り返すのは避けたいので、OS X独自のInstall Packageにすることに。
  この時の作業については昔OS Xが出た時に買った「Mac OS X徹底活用ガイド 海上忍著 (株)技術評論社刊 ISBN 4-7741-1236-4」という本が役に立ちました。

 事前に仮のディレクトリ(例:/lessroot/usr/local)を作っておき、完成したPHPをターミナルから"install prefix=/lessroot/usr/local"で本来の場所とは違うディレクトリにインストール。 さすがにここではエラーに遭遇する事なく完了。
 ここで安心せずに仮ディレクトリ(/lessroot)を"sudo chown -R root:wheel lessroot"で所有権を変更します。

 次にDeveloper's kitのApplication/Utilityの中にある"packageMaker"を利用。
 これはApple製のアプリケーションですから、使い慣れないターミナルでのコマンドラインとは違ってGUIで作業できます。
 結構入力する項目がありますが、私は最低限として、
 Descriptionタブ Title
 Filesタブ Root (上記仮のディレクトリを指定)
 Infoタブ (AutorizationはAdminあたりに設定した方が良いでしょう)
 だけ入力してCreate Package(Command+K)。
 
 これでやっとサーバーマシンへのインストールができます。
 当然ながら現在まともに動いているPHPやphp.ini、libphp4.soなどのコピーを取ってから先の作業で完成したpackageをダブルクリックするとあっけなく作業終了。
 念のためサーバーを再起動して再び"phpinfo();"で確認し、ビルドの日付が新しくなっていて、かつApacheが要求する機能が全て動いているかをwebブラウザでチェックすればOKです。 感涙...
 
 こうしてまとめてみると明解そうですが、エラーの度にネットを検索し(こういう手段があるだけでもあり難いけど)、その履歴を見ると三日で100サイトをゆうに超えてますから、大変でした。
 
 先日、うちの学校でホームページの深い所を教えてもらっている先生と話したとき、「MacはOS Xになってサーバーの開発環境として最適になった」とか言ってたんだけど、こうして本格的にソースからやって行くと、ライブラリやコンパイラ(gcc)を含むSDKの中身等、まだまだですね。
 まぁ、でもLinuxならここまでできたかどうか解りませんから、せめてUIが使い慣れたMacで良かった、というところかも知れません。
 
 そんな苦労も終わってみれば成功の快感がそんな苦労を吹っ飛ばしてくれるんですけどね。
 タダでは起きまへんで...

| | コメント (0) | トラックバック (0)

PHP4.3.11のお守り(おもり)#1

 ここ数日、夜も寝ないで昼寝して、PHP4.3.11をOS X server用にいちからコンパイルする、という作業にはまっていました。
 いつもながら、興味のない人には全く面白くない話しながら、自分に対する備忘とこんなものでも誰かの助けになれば、と思い、覚えている範囲で一通りおさらいしておきます。
 
 私が管理している二つのOS X(10.3.9)serverのPHPは共に4.3.11を使用しています。 理由はこちら
 
 ところがこれにはセキュリティ上の問題があり、上記entropy.chのOS X用バイナリはビルドされた日付から判断する限り、この脆弱製には対応していないと思われます(もしかするとしているかもしれないけど、私が調べた限り...ということで)
 これについてはずっと気になっていたんだけど、上記二つのサーバーはこれまではそれほど多くの人に利用される目的では使われておらず、いつかはなんとかしなくては、程度に捉えていました。
 
 しかし、ここに来て通販サイトなんかの仕事が来るに及び「対策してませんでした」では済まなくなり、夏休みでまとまった時間がとれることもあって挑戦することになったのです。
 
 PHP4.3.11のソースは本家から、パッチファイルはこちらからダウンロードし、ターミナル上でpatchコマンドを使用。 ところがここで早くも問題発生。
 「ld: can't locate file for: -lcrt1.o」(※1)とのメッセージでパッチ作業失敗。
 
 まずMax OS X上でコンパイルをする時には何よりも付属のDeveloper's Kitをインストールすることが大前提となります。 次に重要なのが、走っているOS Xのバージョンに対応したDeveloper's Kitであること。
 私もこれに習い、ソフトウエアアップデートも利用して10.3.9に最適化。
 でもどういうわけか一部のライブラリが/usr/libディレクトリに自動的にコピーされない為に(※1)のメッセージが出ることが判明。
 対策として足らないライブラリを検索(この時"-lcrt1.o"ではなく、"crt1.o"で検索)、し、/usr/libに手動でコピー。
 
 パッチがあたれば次はconfigureですが、その前に、現在動いているPHPのコンフィギュアオプションを例の"phpinfo();"が書かれたファイルで事前にコピーを取っておきます。(その他、php.iniなど、各種バックアップを取っておかないと後で泣きを見ます)
 
 とりあえずentropy.chのコンフィギュアオプションで走らせるも、ここでも「"libjpegというライブラリがない」(※2)というエラーメッセージ。
 これは(※1)とは別物エラーで、PHPに拡張機能を持たせる為に必要なライブラリで、これはこちらからゲット。
 
 ここで、Mac OS Xに詳しい人はあれ?と思われるはずです。
 そうなのです。 これはrpmパッケージですから、Darwin系のOS Xにはそのままでは利用できません。
 ということで、もともとこのパッケージを制作されたOS X Workshopというグループのお力を拝借。
 
 この後もでコンフィギュアオプションの為に「あれがない、これがない」と言われ続け、これらを全てつぶすよりも、entropy.chのオプションから本当自分のサーバーに必要なものだけにしぼることに作戦変更。
 これでも「○○を走らせるには△△のオプションを --withせんとあかんで」と言われたりもしますが、これはなんとか試行錯誤で無事終了。
 
 いよいよmakeの段階になります。
 コンフィギュアであれだけ苦労したんだから、makeまで来たら楽勝だと思っていたら...
 
 長くなったので翌日に続く...

| | コメント (0) | トラックバック (0)

osCommerce モバイル版

 暫くこのカテゴリーの発言が途絶えていましたが、理由はピタリとこの手の商談が途絶えてしまったからです。
 もちろん、それなりに解析や改造は進めていたものの、仕様の要望等が無いのでそのスピードも鈍りがちだった、というここ数ヶ月でした。
 
 最大の課題は携帯電話対応で、自分なりにi-mode対応は進めていたとは言え、これが仮に完成したとしても、auはどうなんだ、vodafoneは?と考えると気が重かったのは事実です。
 
 んで昨夜、中日にぼろ負けの阪神戦を見ているとペンディングになっていた商談先から連絡が。
 商談先と言っても、かつての教え子で、ざっくばらんに最初は「誰かwebとpopができる学生いませんか?」という話からスタート。
 その後、話の流れでosCommerceの携帯対応の話になり、最悪、金払ってでもモバイル対応を済ませている企業にカスタマイズを頼む?なんて情けない話も出ていました。
 
 とりあえず両方併せてまた連絡する、と返事をして切ったのですが、さて気が重い話が出て来た、とひと唸り。
 かと言って何もしないわけも行かないので、なんとなくosCommerce + モバイルのキーワードでググって見たら...
 
 「なんとっ」 この6月に携帯対応のosCommerceがダウンロード可能になっていました!
 ありがたや、ありがたや。 風呂上がりにベランダから星に願いをかけたおかげでしょうか。(ほんとはあずきアイスを嘗めながら天神祭の花火を見ていただけだけど)
 
 眠気もどこかに吹っ飛び、そそくさと事務所にチャリで駆けつけ早速ダウンロード。
 ところが、よく見ると、携帯対応だけではなく、oscommerce-2.2も込みでのフルセットと言う事が判明。
 まぁ、このままいちからクリーンインストールしても良いんだけど、MySQLとの連携等、PC版は既に一応の完成を見ているので、それらの設定や変更をまたやり直すのも面倒、と取り敢えず"mobile"というフォルダーのみをインストールして、モバイル版のみの設定ファイルを書き換えてみました。
 
 細かいエラーを潰しながら、二時間弱でセッティングは終了し、時前のi-mode端末からちゃんと見る事が可能に。 内容も私が自分でコツコツやってたi-mode版よりずっと洗練されている、というか、こういうのを作りたかったのでまずは感謝感謝。
 
 グラフィックのディレクトリがPC版とは別になっているので、画像登録をした時にどういう風になるのか、とか、auやvodafone端末ではどうなるのかとか、また、家内のSH505isではちゃんとSSL通信できるのに、自分のSO213i(premini)ではうまく行かない、などまだいろいろ調整する部分があるとは言うものの、ベースとしてここまでできていれば大助かりなのは言うまでもありません。
 
 加えて先日別件でPHP + MySQLと取り組んだ経験が生きたのか、数ヶ月前にosCommerceのPHPファイル群を見た時より鮮明に流れが読めたのもささやかな喜びでした。
 
 ということで、突然この夏休みの仕事が明確になった、というお話でした。
 
 When I wish upon a star...

| | コメント (0) | トラックバック (0)

眠れる模試の辞書

 タイトルの意味は特にありませぬ...(なかなか良いのが浮かばん)
 
 最近、昼間に堅気の仕事をしていても夜があまり眠たくありません。 というか、夜の8時とか9時頃に滅茶苦茶眠たくなって一瞬爆睡してしまうのが原因の様です。
 昨夜も家族で焼き肉から帰って、風呂の順番を待つ間にほんの20分程熟睡してしまいました。

 この焼き肉、本来は高校受験を一週間後に控えた息子の為に企画したのに、当の本人は志望校の競争率を知った途端青くなって「俺は行かん」と言い出す始末。(今頃焦るなよ)
 とは言え、既に予約してあるので嫁と娘の三人で行った訳ですが、食い盛りの息子がおらんので今日は1.2万円くらいかな?いや、もしかして9kぐらいだったりして、なんて呑気な事を言ってたら、お勘定は1万5千円!
 
 「どんだけ食うねん、この家族」
 
 ここは高校時代の友達が跡を継いだ店で、まぁ、単価は高いけど味は保証付き。 だから下の娘がそこそこ食べるようになってからは1万円を割る事は無いとは言え、三人で1万5千円という事は息子が加わったら2万でんがな。 やっぱりかけつけ生肝とユッケの三人前づつは無謀やったか。
 かくして我が家のエンゲル係数は留まるところを知らず...
 
 話変わって、最近自宅でwebを見ているとなんとなくもたつくのが気になっていました。 マンションタイプとは言え光ファイバーなのに、ADSLの事務所の方がサクサク動くのはなんで? と考えてたらはたと思いついた。
 以前、事務所のDTP用Mac(8.6という古いOSで動いてる)のwebブラウズがあまりに遅いので接続のセッティングを見てみたらDNSのセッティングがISDN時代のままでした。 これを本来のADSL用の設定にしたら、目が覚めるような速度で接続できて驚きました。
 
 network_setting
ということで自宅の方もプロバイダーのホームページを見てみると、やっぱり違ってた。
 事務所のセッティングはDNSサーバーの参照が必要なのに、自宅は不要。 そこを削除したらあっさりと快適ブラウジングに生まれ変わりました。
 それまでのはADSL時代からのiBookのセッティングで、G3の800MHzじゃ仕方ないなぁ、と諦めていたのが気がつかない遠因となっていた様です。 いや、疑って悪かった。
 
 さてぇ、どうせ明るくなるまで眠れないだろうからまたosCommerceの最適化でもするかぁ。
 海外生まれのwebアプリケーションは素晴らしいソースを書いてくれているんだけど、日本発祥のi-modeだとか携帯対応となると全くダメで、自動発信されたメールが長過ぎて切れるだとか、CSSで定義してあるtable表示に携帯側が対応していないだとか、結構手間がかかります。
 今後はこういうノウハウを掴んでおいた方が良いのではなかろうかと、今日も不眠親父はMacに向かう。
 
 あ、でも確定申告の作業にかからんとまずい。
 この毎年一回の自営業への拷問についてはまた今度。

| | コメント (0) | トラックバック (0)

osCommerce

 ここ暫くosCommerceというオープン・ソースのECサイトシステム構築に取りかかっています。
 osCommerce自体の説明はこちらをご覧頂くとして、かつては素人には絶対無理、他に頼めば数百万円から、というネット通販システムが無料というのはオープン・ソースの時代なんだなぁ、とつくづく感じます。
 
 取り敢えず稼働させてみて、サンプルのショップ画面から注文し、アカウントを作成し、支払い画面を選んでボタンを押した後、管理画面で見るとちゃんと記録されてると言う一連の仕事の流れは「無料だから」という言い訳はどこにも感じられません。
 考えてみれば普通のサーバーに入っているApacheやPHP、SQL等、全てオープン・ソースなわけですが、改めて自分でインストールするとこれだけのものがただで良いのか、と変にオドオドしてしまうくらいです。
 
 ただ、このosCommerceはOS Xserverにインストールしたという記事がネット上に無く、「FreeBSD, Linux, Windowsなど」としかありませんでした。
 しかし仕事でMac OS XのサーバーバージョンであるOS Xserverを扱っており、その管理のしやすさに惚れている私は、どうしてもOS Xserver上で動かしたい!と決意しました。
 と、意気込んだ割には大して難しくもなく、とは言ってもオープンソース系の常、なんで?という意味不明のトラブルもありながら、無事インストールの上、稼働。(いや、それはそれでめでたいんだけど)
 最初はいくらFreeBSD系とは言え、OS XはDarwin系なので再コンパイルも必要かな、と覚悟していたのに、中身はphpのスクリプトファイルの集合体で、要するに基本的にはPHP、mySQL、Apacheさえあれば動くという訳で、機能に比べてそのシンプルさにも脱帽。
 
 とは言え、ここからなんですね、実は。
 基本的な動作を確認し、その感動がさめたと同時にあれこれカスタマイズしなければならないことに気がつきます。 まぁ、これがオープンソース系を使ってさらに付加価値を高め、だからこそ商売になる訳ですが、出るは出るはドキュメントに無いエラー。
 自分のミスもあれば、なんで?と本当に首を捻るものまで。
 
 もともとは卒業生の就職先での悩みを解決する為にそこと共同開発ということで始めた仕事なので、明確な締め切りがあるわけではありません。 今月末から丁度春休みにも入るし、なんとか納得できるものにしたいものです。
 
 しかし、その噂を聞きつけて結構多くの人がこのosCommerceに興味を持ったのには驚きました。 その殆どは現在楽天やヤフーに出展している会社の関係者で、あれだけショップが増えるとなかなか認知度も上がらず、そうなると相対的に契約上の制約が気になって来る、という事らしいです。
 
 もともとデザイン系はコンテンツでwebを攻めているので、どうしてもこういうデータベースを含むサーバーサイド技術には疎かったのですが、これを機会にもっと勉強できればと思っています。
 Macを手に入れてDTPに踏み込んだとき、グラフィックデザイナーがこれまで知らなくて良かった製版や印刷の技術にまで熟知しなければならなくなったのと同じなのかも知れません。
 (というか、一歩進む度にダダをこねる子供ような難物をあやすマニアの性と言うか...)

| | コメント (0) | トラックバック (0)