うわぁ、気がつけば半年もたってる!!世の中の動きも早いようで気がつけば人気のlunuxはmintとやらになっているらしい。 サークルの代表に突っ込まれそうだが入れてみることにする。 windowsからの書き込みはこれが最後になりそうだ(職場で書くようなことが…

いろいろ入れる

yum install -y httpd yum install -y mysql-server yum install -y php yum install -y php-devel yum install -y php-pdo yum install -y php-mysql

iptables

sshとhttpは空けとく。ほかはdrop # cat /etc/sysconfig/iptables *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -i lo -j ACCEPT -A INPUT -p 51 -j ACCEPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT …

sshd

公開鍵認証のみでrootログインを不可にする 一般ユーザーを作る 一般ユーザーのauthorize_keysに公開鍵を登録 authorize_keysのパーミッションは600 rootパスワード変更 sshd_config 疎通確認 sshd_configの変更内容は、 # diff sshd_config_org sshd_config…

VPSの契約

VPSさくらちゃんにしました。「ぜったい大丈夫だよ」。 http://vps.sakura.ad.jp/詳細は省略しますが

新年あけましてVPSへ引越し(1)

自宅鯖もいろいろガタがきたので正月休みにVPSへ引っ越してみる。以下、やったことメモ。

mydns+spf+OB25

この組合せ、メールが送信できない・・・。 今のところ、mydnsさんは、登録IPを元にSPFを作ってくれる。これはこれでありがたいのだが、OB25されてると、プロバイダーのメールサーバーをリレーする形を取らざるをえない。そうなると、配送先メールサーバーか…

WordPressのプラグイン更新

管理画面でのプラグイン更新って、実際の処理としてはプラグインをディレクトリごと削除して再度展開しているんですよね。で、wordpressごとSVNに入れて管理していると、.svnディレクトリごと消されるわけです。当然コミット時にエラーになる。いろいろ対策…

OpenIdの依存関係

php

phpのextension、dom が必要らしい。これで5hぐらい持ってかれた・・・。 phpのOpenIdのライブラリを一番外からデバッグ、結局xdebugで中断できるようにしてからはわずか30分ほどで解決までたどり着いたよ。やっぱりデバッガは必須だな。

注意 sshでログインできる

良し悪しは分かれるところだが、sshdの設定で何とかする

パスワードを削除

passwd -d shutdownパスワード入力なしでログインできるように

/etc/sudoers

shutdown ALL=(ALL) NOPASSWD: ALLshutdownユーザーでshutdownをsudoできるように設定全コマンドを実行できるようにしている。あんまり良くないかも。

/etc/passwd

shutdown:x:6:0:shutdown:/sbin:/root/script/shutdown.shユーザーshutdownのログインシェルにshutdownシェルを指定する

shutdownシェル

#!/bin/bash sudo /sbin/shutdown -h now/root/script/shutdown.sh としておきましょうか。

shutdownユーザー

linuxだと無効になってるみたいですね。ログインしたらshutdownが走るshutdownユーザーを作ろうというお話。

リンクを絶対パスで

htmlヘルパーとか、formヘルパーなんかで生成されたURLって基本的に相対パスで書かれる。これを絶対パスで書いてもらおうとするお話。とりあえず、cake/lib/router.phpを見てみる * @param mixed $full If (bool) true, the full base URL will be prepended…

netBeans+xdebug+samba

PG

快適な開発環境を作るのは重要なこと。LAMPだとテスト機のDocumentRoot以下を、sambaで公開してそこでコードを書くようにする。 こうやると作業環境と本番との違いが埋まる。で、開発時にxdebugを使うときに注意、ネットワークドライブの設定をすることこれ…

php -a

php

http://www.php.net/manual/ja/features.commandline.interactive.phpphpと対話できるようです。正規表現のチェックや出力フォーマットのチェックなど、関数の挙動確認とか、環境のチェックとかに使えそうです。

まとめ

ソースファイル単位でテストを行うもの、画面上の動作を再現させるもの、リクエストを再現させるものと三種類あげてみました。 それぞれ出番が違うので、うまく使い分けて生きたいですね。

fwptt

webアプリらしい構造のテストツール。リクエストだけを再現させるところが面白い。

seleniumやwatir

こっちは統合テスト向け。実装方法が若干違うけど、大体おんなじツール。画面単位での動作を再現させるツール

xUnit

名前のとおり単体テスト向け。テストプログラムに対象をロードさせて、動作の検証を行う。再現はクラス単位だったり、ソースファイル単位だったり。

webアプリ自動テスト

PG

ちょっと調べてみたので。テストツールって基本的に、いろんな状態での動作を再現させるツールで、再現結果を評価できるようになっている。何を再現させるかで、いくつかツールがあったので。

論理削除フラグに一言

PG

どういう実装になるのか気になったので書いてみる。何が気になったかって一意制約。こういうデーターは「PKになるだろう」って説もあるが、昨今のフレームワークの作法で祖も行かないことも多い。さて本題。 物理削除(ログテーブルに移してからの)の場合、再…

交換法則のない世界

http://blogs.itmedia.co.jp/magic/2011/12/6886-2d5b.html より。 6×8 は 8×6 とは違うのか。よく考えたら、交換法則の存在しない世界での数式なら×だわ。文章と違う計算やってるんだから答えがあっててもそれは偶然の一致でしか無いんだから、理解を評価す…

ログインさせたくないけどshellはほしい

あんまりないケースかもしれないけど、ないわけじゃないので。 通常ログインさせたくないユーザー(デーモンのユーザーなど)は/sbin/nologinなんかをログインシェルにして、ログインできないようにするが、これだとシェルそのものが起動しない。何をやりたか…

久々に見た残念なコード

異なるDBに存在している二つのテーブルがあって、それぞれにmodelが作ってある。ここまではいい。 この二つの間でアソシエーション組んじゃらめー

リリース時の注意

cakePHPを使っての開発。色々と使えそうなものが一揃えあってさくさく進む。さて、修正や機能追加の案件で一通り造り終えて、いざ本番にリリースしたら動かねー!!なんてことに直面した。 とりあえず手元の開発環境で状況を確認してもちゃんと動いてる。頭…

複数のテーブルをまたぐ抽出条件

こうやってカテゴリーが増えていくんですね。 最近cakeばっかりです。超一流のプログラマーをwizardと言ったり言わなかったりするそうですが、cakeを極めるとパティシエと呼ばれるんでしょうかね? さて、cakePHPのfindのお話。 conditionsに色々と抽出条件…

韓国から

メールが来ました。ハングルは読めないのでgoogleさん訳してもらったところ 、韓国先取りの注意 "、韓国"のドメインは、一般登録開始後約2週間経った現在、登録件数が18万件に迫っています。 完全な。krドメインは約100万ゴンイムウル考えると、これは非常に…