phpMyAdminをAWS ELBのSSL環境で使う

Ubuntu 14.04 のphpMyAdmin(4.0.10deb1)をAWS ELBのSSL環境で使った時に
Login後のURLが
https://hoge:80/phpmyadmin/index.php?token=なんちゃら〜
となってしまってエラーになります。
ポート部分の”:80″を手動で取ってリロードすればつながるのですが、直す方法がわかったので備忘録として記事にします。
(※Nginx 1.10.3 での結果です)

参考URL
https://sourceforge.net/p/phpmyadmin/bugs/4621/

phpMyAdminのインストールフォルダ(/usr/share/phpmyadmin)のlibraries/Config.class.phpを以下のように編集します。
元ファイル1298行目〜

if (! empty($url['port'])
	&& (($url['scheme'] == 'http' && $url['port'] != 80)
	|| ($url['scheme'] == 'https' && $url['port'] != 443))
) {
	$pma_absolute_uri .= ':' . $url['port'];
}

編集後

if (!empty($url['port'])) {
	if (PMA_getenv('HTTP_X_FORWARDED_PROTO') && strtolower(PMA_getenv('HTTP_X_FORWARDED_PROTO')) == 'https') {
		$url['port'] = 443;
	}
	if (($url['scheme'] == 'http' && $url['port'] != 80) || ($url['scheme'] == 'https' && $url['port'] != 443)) {
		$pma_absolute_uri .= ':' . $url['port'];
	}
}

OSX(Yosemite)のアプリブラウズで隠しファイルを表示

すぐ忘れてしまうので備忘録として。
Finderで隠しファイル・フォルダを表示する場合はツールバーの移動でいけるんですが、
アプリケーションのファイルダイアログから隠しファイル・フォルダを選択する方法をすぐ忘れてしまします。
方法は簡単で、ダイアログが開いた状態で
Command+Shift+.
を同時に押すと表示させることができます。

GAEでWordPressを動かす

自分のGAE(Google App Engine)アカウントでPHPが使えるようになったので、Wordpressを動かしてみました。
このブログの書き始めがそもそも WordPress on GAE ってことでもありますし。
(ま、その時の内容はPythonで動くWordpressもどきのweb2pyのことだったんですが、、、)

この記事の前までの状態をGAEにインストールしてみました。
それがこちらになります。(2013/11/01追記:課金止めました)

基本的にはGoogleさんのチュートリアルどおりにすればいいと思うんですが、何点か自分がハマった点を書きたいと思います。
チュートリアルはこちら。
Running WordPress – Google App Engine — Google Developers

ハマった点

  • これはGAE全体に言えることですが、反映に時間がかかることがあるので(特に起動直後など)、自分があってると思って動かない場合は少しだけ待ってみる。
  • Cloud SQLはBillingをON(有料オプション有効)にしないとCloudコンソールのメニューに出てこない。
  • Cloud SQLの有料ONはCloudコンソール側にて行う。Google Cloud Console
  • CloudコンソールのCloud SQLのメニューからSQLをImportするにはCloud Storageを有料化しなければ使えない。(gs://ではじまるのはCloud Storageのことです)
  • で、SQLのインポートはこのgs://を使ったほうがやりやすいと思う。
  • Cloud SQLのコマンドラインツールgsutil等はGoogle Cloud SDKに含まれる。
  • コマンドラインツールはシェル版・Java版それぞれでOAuth認証する必要があり、それぞれ1つしか有効にならないので、切り替える時は”gauth –revoke”でそのたびにOAuth認証を無効にする必要がある。
  • 上記理由からSQuirreLSQLを使いたい場合は最初からJava版を使ったほうがよい。

これくらいでしょうか。

まだ使いやすいとはとても言えない状況なので、いるかどうかはわかりませんが、どうしてもGAEでWordpressが使いたい人が使うという感じですw
料金的にはまだ確定したことは言えないですが、GAE側は無料のままでも行けそうで、Cloud Storageは容量使わないのでほぼ無料と仮定すると、Cloud SQLがPackageモードで$0.36/日で約$11/月ってところでしょうか。

用途にもよるでしょうが、それだったら個人的にはさくらのVPS1Gの月約1000円の方がいい感じですかね。

ふくいちビューワーを更新しました

通知機能を追加しました。
ふくいち周辺で以下の地震が発生したとき、おおよそ1〜2分後に通知します。(速報値において)

  • M5〜6、半径50km以内、深さ50km以下
  • M6〜7、半径100km以内、深さ75km以下
  • M7〜8、半径150km以内、深さ100km以下
  • M8〜9、半径250km以内、深さ200km以下
  • M9〜、半径400km以内

またiOS版(iPhone/iPad)では、以下の機能も追加しました。

  • ライブ映像のピンチ操作によるズーム機能を追加しました。
  • iOS6以上の機種で、ライブ映像のロングタップ操作によるSNS共有機能を追加しました。

Get it on Google Play
Available on the App Store

強震モニタビューワー for iOS 公開しました

強震モニタビューワー for iOS 公開しました。
iPhone/iPad対応のユニバーサルアプリです。
基本的にはAndroid版の機能を踏襲しています。

Available on the App Store

アプリ設定および通知設定は設定アプリのそれぞれの項目にて行なって下さい。

設定できる項目は、
・スリープ無効設定
・背景地図、白/黒選択
・縦画面時及び横画面時左側マップの種類設定
・横画面時右側マップの種類設定
・強震モニタサイトデータ取得オフセット時間
 ※サーバーの処理が重くなって白地図が頻繁に表示される場合に調整して見て下さい(例:-4秒 ー> -6秒)
・強震モニタサーバーの選択

縦画面表示時に以下の操作が可能です。
・左下ボタンにて、縦画面時及び横画面時左側マップの種類設定
・右下ボタンにて、横画面時右側マップの種類設定
・左下のスライドバーにて、過去1時間までのデータを表示
・スライドバー左右のボタンにて、前後2秒のデータへ移動
・過去データ表示時に右下のボタン押下で最新データ表示へ復帰
・iOS6以上では、地図を長押しすることによってTwitter等へ画像を送信することができます。
・地図を左右にスワイプすることでマップの種類を切り替えることができます。(左:地上加速度ー>地上リアルタイム震度ー>地中加速度ー>地中リアルタイム震度ー>地上加速度、右:地上加速度ー>地中リアルタイム震度ー>地中加速度ー>地上リアルタイム震度ー>地上加速度)

ProguardとAdstir

アプリのリリースバージョンではProguardに以下の設定をしてLog出力をストリップしてました。

-assumenosideeffects class android.util.Log {
    <methods>;
}

ただ、この設定をするとどうもAdstirが表示してくれていないことが多いようです。
とりあえずLog出力がストリップできればいいので、Log出力のメソッドのみを指定してみました。

-assumenosideeffects class android.util.Log {
    public static *** v(...);
    public static *** d(...);
    public static *** i(...);
    public static *** w(...);
    public static *** e(...);
}

こうすると、うまく表示してくれるようです。
詳しい理由は調べてないですが、Adstir側でLogクラスの他のメソッドを表示に使ってるのかな?
ちょっと意外だったのでメモとして残しておきます。

P.S. Adstirさん、18禁広告NGにしてもたまに表示されるんですけど、、、w

ナビ(ZH9MD)のSSD化

ある日車のエンジンをかけるとナビの画面がこんな感じに、、、

グーグル先生に聞いてみると、どうやらHDDがヤバイ兆候らしい。
そして、グーグル先生はおまけでどうやらHDDをSSD化できるらしいということも教えてくれたw

SSD化興味アリアリです。やってみようかな〜。いつやるの?今でしょ!
ってことで、HDDが逝ってしまう前にSSD化することにしました。
SSD化にあたっては、主にこちらのサイトから情報をいただきました。
HDDカーナビのSSD化について探るスレまとめ @wiki

HDDカーナビのHDDにはATAパスワードというのが掛かっていて、これを回避できるかどうか。
そして、SSDをエラーなくマウントがどうかがSSD化の鍵のようです。

ATAパスワードを回避するには、以下の3つがあるようです。

  1. ケーブルスワップ法
  2. Repair Station法
  3. 富士通法

富士通法でいけないかなと思いヤフオクを見ていた所、ちょうど富士通法で使える”MHK2060AT”というHDDが出品されていたので落札。
そして押入れで眠っていたASUSのP4GE-VのXP機を引っ張りだしてきて、早速実行、、、
と思ったのですが、どうもこの2DINタイプで増設HDDスロットがないZH9MDでは、このHDDをナビのHDDスロットに挿しただけでは、ナビはHDDにATAパスワードを書きだしてくれないらしいのです。
いろいろ調べたところ、このZH9MDはプログラムがブート出来るHDDじゃないとATAパスワードを書きだしてくれないようです。

仕方ないので別の方法、1回約$50かかりますが”Repair Station法”でまずナビ純正のHDDのATAパスワードを解除し、それをMHK2060ATにコピーし、その後”富士通法”を使うこととしました。
純正HDDは20GB、MHK2060ATは6GBで全部をコピーすることはできないのですが、ブートシーケンス部分だけでもコピーできてればATAパスワードを書きだしてくれると推測しました。そしてその通りうまくいきました。
※じつは単純にSSD化するだけなら”Repair Station法”だけでもいけるんですが、富士通法と併用することによって、作業の安心感、そして今後”Repair Station法”を使用しなくて済むという利点があります。

純正HDDからMHK2060ATへのコピーはEaseUS Disk Copy Home Editionを使いました。
コピー先のHDDがコピー元のHDDより容量が小さくても、警告は出ますが、コピーを実行してくれます。

つぎはSSDの選定です。
うまくいかなかった方の情報を見ていると、意外にもSSDの消費電力がネックかもということだったので、トランセンドのTSxxGPSD320はパスしました。末尾が330なのはいけそうだったんですが、まだ日本ではあまり出まわってないようです。
明確な消費電力は出てなかったのですが、いろいろ調べたところいけそうと判断して、Amazonでこちらを注文しました。

シー・エフ・デー販売 DRAM搭載のIDE接続SSD 旧型PCのパワーアップに効果絶大 64GB CSSD-PMM64WJ2


純正HDDを先ほどのEaseUS DiskCopyでSSDにコピーし、大容量化もしてみようということで、EaseUS Partition Master Home Editionにてパーティションサイズを最大サイズに変更しました。

そして、このSSDをナビに挿したところ無事起動しました。
どなたかのブログでも見たのですが、たしかになぜか空き容量は100%と表示されてますw

マニアモードも設定できました。

まだ、ミュージックサーバーへの録音は試してないですが、何か支障があったらこちらで報告したいと思います。