Home

lab.琉結

pear upgrade、installなんかができない

centOS4はpearが標準でインストールされているとか、
そんでpearでパッケージをインストールしてみる…
そしたらうまくいかなくて手こずったのでメモメモ

#pear install パッケージ名
#pear upgrade パッケージ名

エラーがでてうまくいかないよ…
HTTP error, got response: HTTP/1.1 410 Gone
Didn’t receive 200 OK from remote server. (HTTP/1.1 410 Gone)

ちょっと調べてみると、どうも標準でインストールされているPEARのバージョンが低いのが問題らしい…orz

下記のコマンドでできますという記事が複数ありましたのでちょっとやってみる。
#wget –proxy=off -O – -q http://pear.php.net/go-pear | php

そしたら結局、
PHP Fatal error: Undefined class name ‘pear’ in – on line 688

でエラー…

また振り出しか!?
むしろ問題増えたか?と思ってましたが、
さらに調べてみると、どうも強制的にバージョンを上げてあげるとどうにかいけるみたい
#pear upgrade –force http://pear.php.net/get/PEAR-1.3.3
# pear upgrade –force http://pear.php.net/get/PEAR-1.4.3

ここでのみそは、とりあえず1.3.3に強制的にバージョンを上げて、その後に1.4.3に強制的にすることらしい。

自分の環境では、さらにArchve_Tarのバージョンが低いとエラーが出たので、そいつも一緒にバージョンを上げてあげると後はどうにかなりました!

Cent OS 4 php5.2.6にアップデート

Cent OS 4  phpを5.2.6にアップデートしようと思う。

というのも「magento」というOSSを検証してみたいから…

記事を読んでいるとインストール自体はブラウザーベースで簡単にインストールできそうなのですが、環境を選ぶようです。
今回はインストールしようとしたらphpのバージョンが低いということでインストールできないのでバージョンアップ。

yumでアップデートの情報がだいぶあるので、比較的簡単で安心してできるんだろうとやってみたんだけど、やらかしてしまいました。
http://remail.jugem.jp/?eid=3
http://d.hatena.ne.jp/radioboo/20080307/1204876834

module関係の読み込みでエラーがでまくり。
調べてみるとリネイムされたファイルなどがたくさんあるようです。
これやばくない!?

ひとつひとつ調べるのが大変だったので、いちどhttpdを削除して最初からphpをインストールし直す事にしました。(httpd.confのバックアップを取っておく事!)

yum remove httpd php

インストールし直して、バックアップを元に設定を記述。
modules関係を確認したけど、全然違うな…

再起動して確認したけど今のところ問題なし ホッ

PLESK サブミッションポート(587番ポート)の設定

PLESKの初期設定ではサブミッションポート(587番ポート)を使用したメールの送信は出来ない設定になっているそうです。

PLESKの管理画面 サーバー→メール にて
「Enable message submission」
上記の項目にチェックを入れてあげると サブミッションポート(587番ポート)を使用したメールの送信ができました。

ファイヤーウォールの設定も忘れずに…

メール送信でエラーでかえってくる

メールを送信してもエラーで送信できない。
エラー内容は下記のような感じ

config errir:mail loops back to me(MX problem?)

困った…

でも確認すると、/etc/mail/local-hosts-namesにドメイン名が記載されていないという確率が高いとの記事がありましたので確認…

本当や!

追記してあげると問題なく動きました。
でも今迄は自動でやってくれていたはずなんだけどな…

とりあえず経過を見てみます…

wp_list_pagesのリストにspanを挿入する

wp_list_pagesで書き出されるリストにspanを挿入したい。
調べてみるとpluginで挿入も出来るみたいだが、v2.7以降なら下記で簡単にできるみたい。

<?php wp_list_pages(‘title_li=link_before=<span>&link_after=</span>’); ?>

EC-CUBE 商品ステータス 登録が反映されない

商品ステータスがちゃんと反映されないよとご指摘が・・・
どうも一番最後のステータスが、チェックしても反映されない orz

フォーラムでこのようなトピックを発見しました。
さらにCSVアップロードでは、上限数が不明な基準で固定されているという不具合もあるらしい…

ということでメモ、

今回は、mtb_statusのIDを変更しただけです。
BIT化管理されているので、きっとIDは1から順にふってあげるのがいいみたい。

こっちも念のためメモ↓
ステータスアイコンの最大値を算出方法を修正

商品ステータスの上限数が8に固定されていた。mtb_statusから、動的に決定するように修正。

EC-CUBE v2.3.3→v2.4.0 アップデート

EC-CUBEをさわって初めてのアップデートを試みてみる。
オープン前なので、少し安心して作業できるが、既にデータ入力をしてあるのでこれまでの作業が無駄になるのは怖い…

EC-CUBEのフォーラムを調べてみると、こんなトッピックが…。

ふむふむ…EC-CUBEはアップデートが苦手っぽいな。
でも同じ状況で成功している方がいますね!

考え方はこう。
・まずはv2.4.0をインストール(データベースの初期化はなしで)
・2.4.0差分のsqlを後からたたいてあげる。

うし!頑張ってみましょ!!!

1.まずはDBおよびファイルをバックアップ
じつはphpMyAdminからバックアップを試みると、途中でタイムアウトしている!?のかバックアップができない。sqlのファイルは吐き出されるのもの、中身は空白でした…orz

原因を探してみると、 mtb_zipのフィイルが重いのが原因らしい…
打開策としてはsqlコマンドでダンプする方法があるみたい。

mtb_zipは変更ないしいいんじゃんと考え、とりあえずスルー。
mtb_zipテーブル以外をバックアップしました。

2. EC-CUBE v2.4.0のファイルをアップロード
緊張の一瞬。まずは EC-CUBE v2.4.0のファイルをアップロード。それから以前使っていたテンプレートや画像データ関係をアップしました。

3.アップロードできたらインストールディレクトリにアクセス
インストールのガイドにしたがって、データベース設定の部分まで進む。
「データベースの初期化をしない」という項目のある画面が来たら、しないにチェックして続行。これでひとまずOK!

4.差分のsqlを実行する。
インストールが完了したら、サイトおよび管理画面へアクセス。
もっと悲惨な事になると思いきや…以外と大丈夫じゃん!!!!!!

でもやっぱり商品登録関係の部分でエラーがでました。

そこで、EC-CUBE v2.3.3とEC-CUBE v2.4.0のインストールディレクトリのsqlファイルを比べて差分をphpadminで直接入力してあげる。
自分が調べた感じは、下記のsqlに差分がありました。

・column_comment.sql
・create_table_mysql.sql
・drop_table.sql
・insert_data.sql
・add/dtb_session_mysql.sql

※作業後に記述したので書き落としや勘違いがあると大変なので、それぞれ確認して下さい。

これで今のところエラーはないように思える。
もう少し様子を見てみましょう…

あくまでも個人用のメモですので、作業の際は自己責任で!
何かあった時の為にバックアップを!

EC-CUBE タイトルの変更

ページのタイトルを変更しようとしたら、あれ!?どこだろ…

確認したところ
index.php
list.php
detail.php
mypage/

はどうもデータベースから引っ張ってきている模様。

タイトル変更方法は2つあるようです。

1. データベースの情報を直接修正する。
テーブルdtb_pagelayoutのpage_nameを修正

2. classファイルで$tpl_titleを定義してあげる
classディレクトリ/pages/LC_Page_Index.php
classディレクトリ/pages/products/LC_Page_Products_List.php
classディレクトリ/pages/products/LC_Page_Products_Detail.php

上記に、下記のような感じで定義してあげました。
function init(){
parent::init();
$this->tpl_title = ‘タイトル’;
}

※今回はmyページの修正は必要なかったので作業省略します。

追記:2009/0912
商品一覧ページでカテゴリータイトルを

「カテゴリー名 | ショップ名」

という形にしたい。(ついでにサブタイトルもカテゴリー名しよう!)

$tpl_subtitle = $objDb->sfGetCatCombName($arrCategory_id[0]);
$this->tpl_title = $tpl_subtitle;

これでオッケーかな!?

strtotime()で時間が16時間ずれる… orz

1時間くらいハマってしまったのでメモ…

rssの日時を取得するときにどうしも16時間ずれてしまうことが判明
(16時間進んだ時間が表示されてしまう)

調べてみるとどうも同じ現象の方がいました!

どうもphp4.4.4のstrotime()関数で日時と時刻の間にTが入っていると起きる現象らしい

自分は
strtotime(*******.’-16 hour’))でとりあえず対応しました…

参照サイト↓
http://blog.biocomputing.cc/?s=ソース 

Geeklog トップページの判定

忘れないようにメモ…

トップページの時だけ表示など、振り分けしたいと調べてみた。
下記の関数でできるようです。

COM_onFrontpage()

 

実際にはこんな感じで使いました。
 <?php if(COM_onFrontpage(home)){
      トップページの際表示
} ?> 

 

参照↓
http://www.geeklog.jp/article.php/20090227153240400 

Home

Search
Feeds
Meta

Return to page top