2009年2月アーカイブ

昔、フレッツADSL+固定IPのプロバイダを使って、外部から自宅サーバーにsshでログインしたりOpenVPNを使って自宅のWindowsドメインのリソースにアクセスしたりしてた。

それと似た事をIPv6環境で出来たのでとりあえずメモ。

 

IPv6 part 2

| コメント(0) | トラックバック(0)

前回はDNSの設定まで終わった、のかな。

とりあえず、ローカルネットワーク用のドメインに、リンクローカルアドレスをAAAAアドレスとして登録。ping ipv6host.example.com とかやると、ちゃんと返答が返ってきた。

アプリは対応してるんだろうか...とりあえずそのうちの1台のマシンにhttpサーバーを立てて、ブラウザとかで接続確認をしてみた。

  • Windows Vista + IE 7 -> ok
  • Windows Vista + Firefox 3 -> ok
  • Windows Vista + putty -> ok
  • Windows XP SP3 -> ng (※)
Windows XPの場合、そもそもローカルのアドレスにpingするときに、以下のように「%n」を末尾に付けなきゃいけなかったので、その為にDNSから返される値(%nなし)では接続できなかった。
ping fe80::206:1bff:fec4:d28d%4

CentOS 5.2でBIND

| コメント(0) | トラックバック(0)

自宅ネットワークのIPv6化に取り組んでる。とりあえずpingは通るようになったので、次はローカルネットワーク向けのDNSを立ち上げようとした。AAAAレコードを登録するのがとりあえずの目的。

BINDは以前何度か使った事あるし、すぐ終わるだろうと思ってたけど、結構時間がかかったので一応メモ。

環境

  • CentOS 5.2
  • BIND 9.3.4 (CentOSのrpm)

自分がお世話になっている会社と一緒に海外インターンシップのプログラムを始める事にした。

インターン先はこれまた自分の付き合いのある会社。登記上はアメリカのフロリダ州が本社だけど、開発拠点はカナダのモントリオールとフィリピンのセブ(今は開発の殆どがフィリピンのセブに移行している)。

プログラムの概要としては日本人のインターン生を数名採用して、セブに送って現地スタッフと共に働いてもらうというもの。費用の20万円にインターン先の紹介(現在は前述の一社のみ)と無料の英語レッスンが含まれているので、それなりにメリットはあると思うんだけど。

とりあえずまだ手探り状態だけど、どんな人が来るかを見て軌道修正をしていこうかなぁと思ってる。

CSSでデザインを変更したいと思って、$PROJ_DIR/web/css/の下にmain.cssというファイルを置いて、デザインをカスタマイズしようと思ったけど上手く行かない。

原因はそこで何を書いても、それより前にデフォルトmain.cssが読み込まれてしまい、そこでの設定が優先されるため。同じ問題を抱えている人が書いたブログの記事の方が分かりやすいと思う。

結局やった事は、view.ymlのstylesheetsという項目でfooという名前を設定し、$PROJ_DIR/web/css/foo.cssというファイルを作成。foo.cssはmain.cssをコピーしてそれをカスタマイズすればok。

ちょっと分かりにくい説明だなぁ...ま、備忘録という事で。

symfonyのプラグインのインストールにはPEARが必要。当たり前かもしれないけど念のため。

PEARがインストールされていないと以下のようなエラーメッセージが出た。

[root@db sf_sandbox]# php symfony plugin:install sfGuardPlugin
>> plugin    installing plugin "sfGuardPlugin"
PHP Warning:  require_once(PEAR.php): failed to open stream: No such file or dir
ectory in /var/www/html/sf_sandbox/lib/symfony/plugin/sfPearEnvironment.class.ph
p on line 15
PHP Fatal error:  require_once(): Failed opening required 'PEAR.php' (include_pa
th='/var/www/html/sf_sandbox/lib/symfony/plugins/sfPropelPlugin/lib/task/../vend
or:.:/usr/share/pear:/usr/share/php:/var/www/html/sf_sandbox/lib/symfony/plugins
/sfPropelPlugin/lib/task/../vendor') in /var/www/html/sf_sandbox/lib/symfony/plu
gin/sfPearEnvironment.class.php on line 15

yum install php-pear で解決。

今日、秋葉原にちょっと行って、キーボードを色々触ってみた。結局買ったのはFilcoのマジェスタッチとかいうやつ(型番FKB108M/JB)。

その会社のキーボードは2系統あるらしくて、キータッチが若干重めで反発力があるやつと、割と軽くて所謂メカニカルキーボードらしいカチカチいうタイプ。タイピン我が早い人は割と前者のタイプを使うらしいけど、試してみたけどあまり馴染まなかったので軽いやつにした。

いまそれを使ってこれを書いているんだけど、結構打ちやすくていいね。でも、若干軽すぎるかも。慣れれば違うのかな。やっぱり店頭で試すのと家で椅子に座って使うのだとちょっと感触が違うね。

ま、いずれにしても今まではノートパソコンのキーボードだったんだけど、それよりは格段にいい。

自分はあまりキーボードにはうるさくないしそれ程こだわりはないんだけど、自分が今メインで使ってるノートパソコン(3~4年くらい前のシャープ製)のキーボードはただ重いだけで使いにくい。ようやくそれから解放されて嬉しい。

sfGuardPlugin

| コメント(0) | トラックバック(0)

symfony(1.1)を使ってシステムを構築中、ユーザー認証が必要になった。(というか最初から必要だったんだけど。)

sf_sandboxのチュートリアルで使われていたsfGuardPluginを使うことにした。日本語に訳されているドキュメントもある。基本的なインストールの方法はそっちを見て欲しい。

ここで書くのは「sfAuthUserモデルをカスタマイズする」より先の話。さっきのページに書いてある通り、sfGuardPluginを普通に使うとユーザー名、パスワード、有効・無効フラグ、最終ログイン日程度の情報しか保存できない。しかし、普通にシステムを作る場合、ユーザーテーブルに名前、住所、メールアドレス等の情報を持たせたいはず。

sfGuardPluginではsfGuardUserProfileという、外部テーブルと連係する仕組みを持ってるのでそれを使用。

Customerというクラス(customerテーブル)に付加情報を持たせて、sfGuardUserと1対1でリレーションさせる。

web関係の開発をしている人なら、チェックボックスにチェックされていない時にはその値が送信されないというのは誰でも知ってると思う。

例えば以下のフォームの場合、チェックされている場合にはfoo=1という値が送られるが、チェックされていない場合には("foo="というように空文字列が送られるのではなく)、fooという値自体が送られない。

<input type="checkbox" name="foo" value="1">

もちろんそれは知ってるんだけど、object_checkbox_tagを使ってオブジェクトの値によってフォームを生成する場合には、hiddenタグとかを併用してチェックされていない時でも0とか空文字列を送って欲しい気がする。


自分用メモ。

今やってるプロジェクトでは一部Java DBを使ってる。初めて使ったので色々分からないこともあったけど、まぁDBMSだし基本的には一緒だね。

英語だけどこのページにチューニングの基礎的な内容が載ってる。

新規プロジェクトにsymfonyを使うことに決めてから約3週間。今ではすっかり慣れたので、これからPHPのプロジェクトがある時は基本的にはこれを使おうと思う。

この3週間で経験したエラーやtipsなどをこれからぼちぼちと書いていこうと思う。

最初はsymfonyのチュートリアルをやっていて出たエラー。

[PropelException]
[wrapped: sqlite extension not loaded [User Info: Array]]
stack trace

    * at ()
      in SF_ROOT_DIR/lib/symfony/plugins/sfPropelPlugin/lib/vendor/propel/Propel.php line 489 ...
             486.             try {
             487.                 $con = Creole::getConnection($dsn);
             488.             } catch (SQLException $e) {
             489.                 throw new PropelException($e);
             490.             }
             491.             self::$connectionMap[$name] = $con;
             492.         }


IDとか多すぎ

| コメント(0) | トラックバック(0)

最近光回線に加入した。プロバイダはOCN(パソコンを買う時に割引になるので)。

しかし驚いたのが、IDとパスワード類の多さ。NTT東日本、NTTコミュニケーションズが別の会社ってのは知ってるけど、かなり紛らわしい。OCNで5個くらいのユーザーIDとパスワードで、NTT東でもユーザーIDがあるし。

OCNの5個は1~2個に減らせるような気がするんだけど...

このブログの作者

名前:kazu
仕事:IT関係の何でも屋
メール:kazu 後幕 kazu どと tv
詳しくはこの辺

このアーカイブについて

このページには、2009年2月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2009年1月です。

次のアーカイブは2009年3月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ