Ti.Network.HTTPClient を使うと不正なSSL証明書のホストと通信できてしまう

変な事できないよな?と思って試してみたら証明書の無いホストと通信できちゃって思わず「まーじーでーーー」と大声で言ってしまったわけですが、validatesSecureCertificateのところにさらっとこんな事が書いてあった

Note that on iOS, this value is always false by default. This is a known issue.

true にしたら通信できなくなって一安心。あ、ちなみにTitanium Mobile 2.1.4時点での話。

参考:http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.Network.HTTPClient

PEAR::Mailでのメール送信が遅い

PHP 5.3 PEAR::Mail 1.2.0 で、SMTPドライバを使って結構な数のメールを送る検証をしていたら、凄く遅くなるパターンに遭遇した。散々悩んだ挙句に見つけたのがこれ

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1176279911

ソースは読んでないけど、確かに1KB付近を境に性能が大きく変わることは確認できた(遅いパターンは3倍くらい時間がかかる)。

検証とはいえ「てすとテスト」みたいなのはやめようね。というね。。まぁでも1KB以下のメールをそれなりの数送る場合は他の方法を考えたほうが良いかもしれない。

apacheのaccess_logをSQLで検索したい!

ログはファイルに出てるんだけど、ちょっとした調べものでスクリプト書いたりするのが面倒。SQLで検索できたら楽なんじゃね?と思って調べてみたら同じようなことを考えていた人がいたw

http://d.hatena.ne.jp/lolloo-htn/20090130/1233327457

しかしこれ、わりとモダンなpython環境じゃないと動かないようで、CentOS 5環境で動かすにはちょっと修正が必要だったので、修正してgithubに置いてみた。

https://github.com/takasick/apachelog2db

続・Titanium Mobile 1.8.1 + TiStoreKit 1.5 で In-App Purchases

今度は Non-Rnewing Subscription 。

基本的には Auto-Renewable Subscription ベースで行けそう。ただし、Non-Rnewing の場合大きく違うところが

  • iTunesで購読期間の管理はしない(期間を独自に管理する必要がある)
  • restore不可(複数デバイスの対応を独自に実装する必要がある)

という点。あえてNon-Renewingを使うメリットは無さそう。

Titanium StudioからiPhone Simulatorを起動するとエラーが。。

dyld: Library not loaded: @rpath/DevToolsFoundation.framework/Versions/A/DevToolsFoundation

こんなメッセージが出る場合の対処法。

これ、多分Xcode 4.3とTitanium Mobile SDK 1.8.xを使っている時に出る問題で、Titanium Mobile SDK 2.x系列のios-simを使うようにしたら動くようになった。

cp /Users/ユーザー名/Library/Application Support/Titanium/mobilesdk/osx/2.x/iphone/ios-sim /Users/ユーザー名/Library/Application Support/Titanium/mobilesdk/osx/1.8.x/iphone/ios-sim

これでOK。

それでもダメだったら http://d.hatena.ne.jp/f000kj/20120413/1334328643 をやってみるといいかも。

PDOでMySQLに接続してプリペアードステートメントを使うと、クエリーキャッシュがきかないことがある

条件は

この二つの条件にあてはまる場合、プリペアードステートメントを使うとクエリーキャッシュがきかない。

続きを読む PDOでMySQLに接続してプリペアードステートメントを使うと、クエリーキャッシュがきかないことがある

RHEL6系はrelatimeがデフォルトで有効

kernel 2.6.20以上でrelatimeが導入されてるってどこかで読んで知ってはいたんだけど、それが有効になっているのかどうかイマイチ確証がなかったのでずっとnoatimeにしてたんだけど、どうやらデフォルトはrelatimeになっているようなので、よっぽどシビアなケース以外はfstabにnoatimeって書くのを止めてよさそう。

参考:http://docs.redhat.com/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Power_Management_Guide/Relatime.html