hostsに書けば何でも使えはするのだけど、 RFCで使ってもいいよと定義されているものがある。 特に理由がないのなら、これに従っておくべきである。 RFC2606 Reserved Top Level DNS Names ドメイン .test .example .invalid .localhost ホスト example.com …
pdo_mysql を libmysqlclient を使うようビルドした場合に使えるようになるPDOのクラス定数。 mysqlnd を使うようビルドした場合は存在しない。 なのでこれを使うようなコードは、定数が存在するかどうかを確認してからにしないと環境によってFatalが起きる…
メールサーバの移行の際に、DNS浸透の有無によって新旧サーバにメールが届くのを回避するために透過プロキシを使った。
ちょいちょいPutty形式の鍵を渡されることがあるのでメモ。 Putty → OpenSSH のRSA鍵変換 Putty形式の鍵は、秘密鍵と公開鍵が一緒になっている。 puttygen を使って、OpenSSH形式の秘密鍵&公開鍵に変換できる $ puttygen.exe $(cygpath -m ~/.ssh/hoge.ppk)…
カラムに null が入っている場合の比較は面倒なもの。 このような長ったらしいクエリになる。 col1 = val1 OR (col1 IS NULL AND val1 IS NULL) 比較データが 非null か null かによって、プログラムで生成するクエリを変えるという方法もある。 発行されるS…
Win7 Pro 64bit Cygwin 64bit 2.2.0 2015-08-20
Windows10を試しに入れてみたものの、ウィンドウの余白がやたら大きく、 1280x800 のノートPCでは画面が狭くて辛すぎる。 GUIから変更する機能はなくなってしまった模様。 HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics タイトルバーの高さ、幅 Ca…
vmware-vdiskmanager -r source.vmdk -t 2 dest.vmdk VBoxManage internalcommands sethduuid dest.vmdk 変換したうえで、uuidも変更している。
DateTimeはマイクロ秒を扱うことができるが、 コンストラクタ経由だと秒精度までとなってしまう。 だからこう作る。 $timeZone = new \DateTimeZone(date_default_timezone_get()); $dt = \DateTime::createFromFormat('U.u', microtime(true)); $dt->setTim…
ドライバを入れるだけでいいとのことだけど、それだけではChromeから認識されなかった。 最新の adb.exe を使うと認識できたのでメモ。
Error: Unable to connect to system D-Bus (1/3): Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory VirtualBoxを 4.3.12 → 4.3.30 に上げたら発生した。 ホストはWin7、ゲストはCentOS 6.7。 GuestAddition を動…
ことがあって混乱した。バージョンや設定によるのかな? warningを吐きつつINSERTできる環境と、エラーで止まる環境がある。 int カラムに '' を入れようとした場合でも、0 が入ったりする。 MariaDB-5.5.33 は入る MySQL-5.6.25 は入らない これは一度調べ…
VirtualBoxのディレクトリ共有機能はとても遅い。 代わりにSambaを使うメモ。 メリット ゲスト側からのアクセスが早くなる ゲスト側でパーミッション設定ができるようになる ゲスト側でのUT、カバレッジ出力が劇的に早くなる デメリット ホスト側からのアク…
とあるAPIから返されたXMLをparseしたところ、環境により結果が違っていた。 どうも、Bug #66084 の修正が影響しているらしい。 この修正は php-5.6.11, php-5.5.27, php-5.4.28 で取り込まれている。
Symfony の http-foundation の 2.7.x を追加する例。 composer.phar require "symfony/http-foundation:~2.7" -vvv ライブラリがダウンロードされ、 composer.json, composer.lock が更新される。
久しぶりにSmartyを使うプロジェクト。 初めて3系(3.1) を使ったのだけど、テンプレートで名前空間を use で省略することができない。 フルでクラス名を書くか、別名で対象オブジェクトをassignするという、 ちょっと残念なコードにならざるを得ない状態。 …
PHPUnitが遅い カバレッジを出力しているわけでもないのに、phpunitの動作が遅い。 調べたのでメモ。 phpunit 4.7.5 phpunit/php-code-coverage 2.0 CentOS 6.5 ディスクが遅い環境
Phinx を使っている。 これは既存DBから差分を抽出する機能を持っていない。 つまり、マイグレーションの内容は手で書く必要がある。 この点はCake2時代の CakeDC Migration プラグインや、Symfony2に劣っている。 Phinx の記述方法自体はシンプルでわかりや…
CakePHP2 で、一般ユーザと管理ユーザのDBテーブルが違う場合
CakePHP2 の国際化機能を初めて使ったのでメモ。 Cake2 の i18n は、gettext に倣っている。 gettext を知っていればとくに違和感なく使える gettext, php-gettext 拡張がなくても動作する __(), __d() 等のCake専用関数が設けられていて、php-gettext とほ…
export フルダンプ mysqldump -uuser -p dbname --databases --single-transaction --order-by-primary --quick --quote-names > dump.sql テーブルとレコード (CREATE DATABASEなし) mysqldump -uuser -p dbname --single-transaction --order-by-primary -…
GNU gettext は、ソフトウェアの国際化のためのライブラリ・コマンド群。 大まかな流れとしては以下のようになる ソース中から多言語対応すべき文字列を抽出 (POT作成) gettext コマンド。 それをもとに各言語用に対訳ファイルを作成 (PO作成) msginit コマ…
Skypeメモ バージョンを7に上げたら、SkypeのウィンドウがノートPC(XGA)の画面の半分を占めるようになった。 いくらなんでも画面が狭すぎるので6系に戻した。 ついでに過去につかっていたバージョンをメモ。
「php-gdが上手に入らない、なんとかして」の対応メモ。 CentOS-6.5 php-5.6(remi) 入れたいのは remi-php56 の方のphp-gd。そしてGD本体。 $ sudo yum --enablerepo=remi-php56 list | grep php-gd php-gd.x86_64 5.3.3-40.el6_6 updates $ sudo yum --disa…
リストはシンプルに配列な場合もあるけど、Traversable なオブジェクトかもしれない。 リストを受け取る関数/メソッドの仮引数が、Type Hinting されていると
CakeTestFixture にこう書いておけば、 本番用DBからテスト用DBにスキーマを取り込んでくれる。 要はテーブルをコピーしてくれる。 public $import = ['model' => 'ModelName']; でも、なぜかpkey以外のindexは無視されてしまう。 コピーしてくれたテーブル…
何らかの要因で壊れてしまい、シークのできないFLVがある。 これはffmpegを使って再変換をすれば解消できる。 ffmpeg -i input.flv -vcodec copy -acodec copy -sameq output.flv 自分のストリームを動画で残そうとして気づいた。
鍵ファイルは rsa_private_key_file で指定できる。 rsa_private_key_file=/PATH/TO/server.key 証明書は、中間証明書を指定する機能がないため、 2つのファイルをくっつけたものを用意してそれを証明書として指定する。 順番は 証明書→中間証明書 の順。 ca…
概要 Windows標準のFTPクライアントはPASVモードに対応していない。 ACTIVEモードでは標準(20,21)以外のポートに接続することは現実的じゃない(NAT問題)。 Windows標準のFTPクライアントをターゲットにする場合、 FTPサーバは標準ポートかつACTIVEモードのも…
概要 「php-gdが動作していないのでなんとかして」の対応メモ。 CentOS-6.4 x86-64 php-5.5.4 5.5.4-1.el6.remi gd-last 2.1.0-0.10.725ba9d.el6.remi