ここで、EC-CUBEに決済モジュールを組み込むときの手順を書いたんだけど、当然のことながら、テスト環境でのお話。
さて、テストはうまくいったから、さぁ本番というとき、決済会社からは以下のような書類が送られてきます。
- README.txt
- 本番環境登録情報
- モジュール用クライアント証明書(*.pem)
- 本番環境接続用モジュールのプロパティファイル(サンプル)
README.txtにはどういうことが書いてあるかというと、「本番用は試験環境と同じだからそれを使ってね」、「プロパティファイルだけは差替えてね」、「本番環境登録情報は各電文の共通ヘッダに設定すべき情報ですよ」、「説明書を見てね」、「わからなかったら問い合わせてね」ということです。
- まず、プロパティファイルを差替えます。
試験環境と決済URL等が違うだけなので、試験環境用の決済URLを本番用に書き換えて、クライアント証明書ファイルパス(*.pem)も書き換えておきます。(ファイルももちろんコピーしておきます)
- このまま、クレジット決済をやってみるとエラーになります。
「P002:認証情報が不正です。」というエラーです。なぜでしょうか。本番環境登録情報というやつをどこにも登録していないからですね。
- オーナーズストアで決済モジュールの設定を行います。
みんな、この辺のこと、スパッと気づくんでしょうかね。頭いいんですね。
ちゃんと共通ヘッダに情報がセットされたら、P002はでなくなると思います。
STLS/STARTTLSの導入
サーバ管理Ubuntu(10.04)の postfix(2.7.0)に STLS/STARTTLSを導入する手順。
※ Ubuntuのバージョンは「cat /etc/lsb-release」で取得できる。
postfixのバージョンは「/usr/sbin/postconf | grep mail_version」で取得。
IE7互換モード
TipsIE8とIE7互換モードで1ピクセルくらいずれることがよくあって、いちいち IEハック入れるの、面倒臭いなぁと思っている貴方!
もうそんな人はいないと思いますが、もしいたら騙されたと思ってコレを headerに入れてみてください。
IE8から互換モードの切替えボタンが消えるので、IE7互換モード対応はしなくてよくなります。
やったねパパ。 もちろん、IE7、IE6、・・・はガン無視ということで。
“IE=Edge” という手もありますが、IE9がメジャーになったときズレズレだったらヤだしね。
※ ちゃんとした知識が欲しい人は、こちら ⇒ WordPressテーマ “iNove” とIEの互換表示モード をどうぞ。
さくらのVPS引越し手順完全版
WP3, サーバ管理キーワード
この記事は、さくらのVPS、Ubuntu 10.04、引越し、Apache+PHP+MySQL+WordPress+EC-CUBEなどのキーワードで参照されます。
ここ1週間にあったこと
・2011/3/11 14:46 東北関東大震災が起きる。日時を忘れてしまわないように記録。犠牲になられた方に合掌。
・3/11発生当日は深夜1時まで停電。情報は手回し充電ラジオで。
・電気がついたところで飛び起き、まずサーバの確認。大丈夫だ。それから情報収集。大惨事。
・起動スクリプトに漏れがあったところなど、次に停電になったとき、アタフタしないようにチェック。
・こんなときに限ってUPSのバッテリー切れ(故障)でシャットダウンできなかったので、すかさず新しいUPSを注文。
・計画停電が始まる。1日のうち、6:20~22:00までを5つに区切ってブロックごとに停電させるシステム。
・うちは第3ブロックで初日(3/14)こそ停電しなかったものの、2日目以降は毎回停電。
・一日3時間、午前開始のときは6時間停電するのは、サーバを公開している体制としてはあり得ない。
・しかも4月以降も続くらしいので、ここ(横須賀)で自家発電なしにサーバを公開するのは限界。
・さくらのVPSはデータセンターが大阪(堂島)にあって、そのうち、北海道(石狩)と東京にもできるらしい。
・将来的には3か所借りておけば、負荷分散+耐障害性としてもいいだろうということで、さくらのVPSに決定。
やること
・いまのサーバ(Ubuntu 9.04 i386)をVPSサーバ(1.5GB、Ubuntu 10.04 amd64)へ移す。
・EC-CUBEを使っているお客様のみ、単独サーバ(1.0GB、Ubuntu 10.04 amd64)へ移す。
・この際だから、Apache+PHP を nginx+PHP(FastCGI)にしたかったんだけど、最後の方の挙動がおかしくて断念。
・とりあえず、枯れた構成でいくことにした。
以下、不親切な作業記録(あとで自分が見るためだけのものともいう)
時間に余裕があるときは、A8.netでアフィリエイトを申し込んでおく。本人可。ただし審査あり。
VPSコントロールパネルからのインストールに必要。先にやっておくこと。
https://secure.sakura.ad.jp/menu/top/
契約情報 > 契約サービスの確認 > さくらのVPS 1.5G > サーバ設定
https://secure.sakura.ad.jp/vpscontrol/main/
OS再インストール > カスタムOSインストールへ > OS選択 > Ubuntu10.04 amd64
※ VPSコントロールパネルログインのパスワードとサーバ・ログインのパスワードは違う。
VPSコントロールパネル上部にパスワード変更ボタンあり。
ここを見ればほぼOK。さくらのVPSにUbuntu 10.04をインストール
※1 ネットマスクの入力ミスに注意 ⇒ 255.255.254.0
※2 1.0GB以上は仮想ディスクが2つですが『Guided – use entire disk』にします。sdbは別マウント。
終わったら、1分弱待ってから、VPSコントロールパネルから起動でOK
※ サーバ側で公開鍵と秘密鍵を作って、秘密鍵(id_rsa)はクライアントのTeraTermのところに保存しておく。(cat .ssh/id_rsa とでもして、コピペでファイル書き出し)
Ubuntu 10.04 Beta 版で不要なサービスを停止してみる。
OSを再インストールしても仮想ディスクの中身までフォーマットされるわけじゃない。
sdbはそのまま残ってるので注意。(失敗したと思って何回もやり直さないこと)
ドメインをレジストラ(お名前.com、ムームードメイン等)で管理しているのであれば、DNSのAレコードを変更する。
さくらのVPSコントロール画面で、ホスト名を変更する。
新サーバに余計な設定を残さないよう、旧サーバ側をクライアントにしてアクセス。
※ 以下、c# はクライアント側ルート、s# はサーバ側ルート。
なにも設定せずに、/var/www/index.htmlが表示できたらOK。
うまくいかないときは、/var/log/proftpd/proftpd.log にエラーがあるはず。
※ Ubuntu 10.04でインストールされる proftpdは 1.3.2c で、脆弱性(Telnet IAC stack overflow vulnerability (ZDI-CAN-925))があります。最新版(1.3.3d)をインストールするのがベストですが、自分でできない場合は Ubuntu用パッケージが出回るまで接続元IPアドレスを制限するなどの対応をしてください。
危ないので、接続元を制限する。
いろいろ面倒なのでルート権限で操作。以下 o# は旧サーバ、n# は新サーバ
EC-CUBE:本番用決済モジュール
EC-CUBEここで、EC-CUBEに決済モジュールを組み込むときの手順を書いたんだけど、当然のことながら、テスト環境でのお話。
さて、テストはうまくいったから、さぁ本番というとき、決済会社からは以下のような書類が送られてきます。
README.txtにはどういうことが書いてあるかというと、「本番用は試験環境と同じだからそれを使ってね」、「プロパティファイルだけは差替えてね」、「本番環境登録情報は各電文の共通ヘッダに設定すべき情報ですよ」、「説明書を見てね」、「わからなかったら問い合わせてね」ということです。
試験環境と決済URL等が違うだけなので、試験環境用の決済URLを本番用に書き換えて、クライアント証明書ファイルパス(*.pem)も書き換えておきます。(ファイルももちろんコピーしておきます)
「P002:認証情報が不正です。」というエラーです。なぜでしょうか。本番環境登録情報というやつをどこにも登録していないからですね。
みんな、この辺のこと、スパッと気づくんでしょうかね。頭いいんですね。
ちゃんと共通ヘッダに情報がセットされたら、P002はでなくなると思います。
Memo:タブの吐き出し・・・9/10
Etc, Tips最近は記録するのが面倒臭くなって、「また、いるときググればいいでしょ。ぼんやりと記憶に残ってるし」と、さっさとタブを閉じてしまっていたので、反省!
ちゃんと記録しておかねば、イパネバの娘。
(結構書いたので、今日のところはこのくらいで勘弁しといたろ!)
読み込み時に動かしておくことが重要!($(function() なしで書いても何もおこらないよ)
bottomを指定すると下の方に張り付いて Good!
latest logのひとが開発している jQueryに代わるライブラリ。機能はよさげなんだけど「導入実績なし」というところがちょっと。
FireBugでエラーになる。もちろん使えるけど。
ここを見るといいよ。
正規表現による置換のマルチバイト文字列版。それより、いまだに str_replaceのマルチバイト版が標準に入っていない方が不思議。
postfixが「Delivered-To:にあるメッセージを”mail forwarding loop”としてbounce」するということ。自分が送ったメールには、Delivered-To:を付けておいて、「Deliverd-To」フィールドの内容と送付先が同じ場合は NGにするということのようです。ここ参照。
nodefaultsをかけておかないと、エラーになります。その理由は、こちらで。
PHP:文字列の途中にある数字をゼロパディング
Tips体調不良のボケーっとした状態で考えたので、これでいいのかわるいのか判断がつかないんだけど、後で使うためのものなので、一応メモしておく。
仕様としては、sb0716_4a.jpg というような文字列があったとき、これを、sb0716_04a.jpg にしたいということです。
_1.jpg、_4.jpg、_10.jpg とあってソートしたら、_1.jpg、_10.jpg、_4.jpg になるのは嫌ということです。わがままですね。
”#”で場所を特定しておいて、ゼロパディングしてから戻すというアイディアなんですけど、正規表現だけでもっとスパッといかないんですかね?