2011-01-01から1年間の記事一覧

Vagrant のベースBOX作成手順 (Scientific Linux 6.1)

Scientific Linux 6.1 のベース BOX を自分で作成してみた。http://docs-v1.vagrantup.com/v1/docs/base_boxes.htmlまずは VirtualBox 上で VM を作成する。そして、vagrant package コマンドでパッケージ化する。 以下から、最新のインストールDVDイメージ…

Vagrant の様々なBOX (パッケージ)

Vagrant のVMや管理情報をまとめたパッケージのことを BOX と呼ぶ。 公式サイトに用意してある BOX は、Ubuntu のみだが、様々な非公式 BOX が以下から取得できる。http://www.vagrantbox.es/

Vagrant で GUI モード

Vagrant で VirtualBox を起動するときは、デフォルトでは VBoxHeadress なのだが、 ネットワーク接続がうまくいかない場合などに GUI が使いたくなる。設定を有効にすると GUI モードになる。 Vagrant::Config.run do |config| config.vm.boot_mode = :gui …

Vagrant でマルチVM

一つのシステムで複数のサーバで構成されるのは、よくあることだ。 Vagrant では、一つの設定ファイルで複数の仮想サーバを管理する仕組みも用意してある。 http://docs-v1.vagrantup.com/v1/docs/multivm.htmlVagrantfile という設定ファイルで管理されてい…

Vagrant で仮想マシンを動かしてみる

Vagrant をインストールした後は、 公式サイト上に Ubuntu 10.04 のイメージが用意してあるので、 これをもとに仮想マシンを起動してみた。実行環境は、Mac OS X 10.6。 vagrant box add base http://files.vagrantup.com/lucid32.box mkdir test cd test va…

Vagrant のインストール (MacOS X)

昨日、Vagrant の説明をしたが、実際にインストールしてみる。 Vagrant をインストールするザックリな流れは以下の通り。 VirtualBox インストール Ruby + RubyGems インストール Vagrant インストール virtualbox http://www.virtualbox.org/wiki/Downloads…

Vagrant で開発環境構築を自動化しよう

世間では、それほど注目されていないようだが、Vagrant というとてもすばらしいツールがあることを知った。実は同様のツールを自作しようとしていたが、このツールにすべて機能がそろっていた。 Vagrant とは Vagrant は、Ruby で組まれたスクリプトで、仮想…

ssh クライアントの接続タイムアウト対策

ssh クライアントで接続している際、一定時間利用していないと接続が切れる現象に悩まされていた。対策としては、クライアント側に「Keepalives間の秒数」を設定しておくと良いようだ。クライアントPC側の ~/.ssh/config に ServerAliveInterval 60を追加し…

Chef-Solo で PHP をインストール (CentOS編)

Chef-Solo のインストールが終わったので、実際に使ってみることにする。 http://d.hatena.ne.jp/miau/20110405/1302011382 を参考に chef-solo で opscode のレシピを使って PHP をインストールしてみた。 事前準備 chef-solo に必要な環境が整っていること…

Chef-Solo のインストール (CentOS編)

CentOS 5.6 に Chef-Solo をインストールしてみた。 http://wiki.opscode.com/display/chef/Installation+with+RubyGems の通り。CentOS 5 の標準の Ruby バージョンは 1.8.5 と古いため、最新版の RubyGems がインストールできないとのこと。RubyGems 経由…

avahi でIPアドレスを調べる

ホスト名からIPアドレスを調べるには: $ avahi-resolve -n ホスト名.local -4 IPアドレスからホスト名を調べるには: $ avahi-resolve -a IPアドレス -4 マルチキャストDNS を利用するので UDP ポート 5353 番を開けておく必要がある。

PHP 関連のファイル検索

ファイルの検索に find + grep を組み合わせることが多いのだが、PHP のソースコードで拡張子が複数存在する場合にいちいちオプション指定するのが面倒なので シェル(dash)の alias で定義してみた。grephp という名前が妙にお気に入り。定義: alias grephp…

Webメンテナンスモードの要件

Webフレームワーク上での簡単メンテナンスモードの実装が流行っていた。mod_rewrite でもできるとのこと。 http://php-tips.com/server/2011/05/mod_rewrite-htaccess-maintenance http://web-tan.forum.impressrd.jp/e/2009/06/16/5880mod_rewrite の例を参…

mod_rewrite を使った簡易的なキャッシュ

簡易的なページのキャッシュ方法。ログイン状態で表示切替えが必要なページには使えないが、ブログの記事のように出力結果が静的でページの生成が重い場合は効果が期待できる。参考: http://d.hatena.ne.jp/ruby-U/20090131/1233372302 mod_rewrite でキャ…

Windows 7 で一般ユーザーの「環境変数」を変える

以下の順にたどっていくと、XP で見慣れた設定画面が表示できた。 コントロールパネル > ユーザーアカウントと家族のための安全設定 > ユーザーアカウント > (左ペインに) 環境変数の変更

携帯の Cookie 対応状況

docomo だけが遅れをとっている。 au 全機種対応 http://www.au.kddi.com/ezfactory/tec/spec/cookie.html docomo 30%程度対応 (2011年4月時点) iモード2.0 以降対応 (2009年夏モデル以降) http://www.nttdocomo.co.jp/service/developer/make/content/brow…

FullCalendar で色を変えるには

FullCalendar で、曜日やイベントの色を指定してみた。今回、FullCalendar 1.5.1 が前提。古いバージョンの場合、指定方法が異なる場合がある。 曜日の色を指定する 土曜日や日曜日などは色を変えたい。CSS を指定すればよい。 .fc-sun { color: red; } /* …

FullCalendar で日本の祝日を表示する

FullCalendar 1.5.1 がリリースされていた。Google カレンダーの日本の祝日を表示させてみた。ポイントは、gcal.js を追加することと、祝日の feed を指定すること。日本の祝日URL は、 http://www.google.com/calendar/feeds/ja.japanese%23holiday%40group…

PostgreSQL で PL/PgSQL 関数が作成できない

PostgreSQL 8.3 の初期状態では CREATE FUNCION 時に、以下のようなエラーが発生した。 ERROR: language "plpgsql" does not exist以下のSQLコマンドを実行したところ、作成できた。 CREATE LANGUAGE plpgsql;

rsyslog-pgsql のメモリーリーク

既にDebian squeeze がリリースされているが、今回は、Debian lenny の rsyslog-pgsql について。http://kb.monitorware.com/memory-leak-rsyslog-with-postgresql-backend-t8802.htmlの様に rsyslog 3.20.x 以前では、PostgreSQL との連携にバグがありメモ…

VAIO Type P で Ubuntu 10.10 をインストールする前に

VAIO Type P (VGN-P90HS) に Ubuntu 10.10 をインストールする前に、必ず BIOS のアップデートをしよう。Type P の中でも VGN-P90HS は、旧モデルのため BIOS を更新しないとインストールが面倒になる。BIOSダウンロード: http://vcl.vaio.sony.co.jp/downlo…

JavaScript で Flash player のバージョン判別

http://www.allinthemind.biz/markup/javascript/javascriptflash_player.html より、 function FlashPlayerVer(){ //初期設定 var flashplayer_ver = 0; //IE以外の場合 if(navigator.plugins && navigator.mimeTypes['application/x-shockwave-flash']){ v…

JavaScriptを読み込むときにパラメータを外部から指定

http://d.hatena.ne.jp/ksix/20090102/1230892699 より、JavaScript を HTML から呼び出す際にパラメータを指定する。 <script type="text/javascript" src="foo.js?aaa=bbb&ccc=ddd"></script> foo.js のソースコード: var params = (function(){ var el = (function(el){ if(el.nodeName.toLowerCase() == "script"){ return el;…

MacBook Air 11インチ欲しい!

PHP でクローラー判定する

PHP

(参考) http://memorandum.yamasnet.com/archives/Post-217.htmlWebサーバへのリクエストがクローラーかどうかを判定したい。 今回は、リクエストヘッダーの User-Agent で判定する。 get_browser() を使う PHP では、get_browser() 関数を使うと簡単。

キャンペーン応募!

MacBook Air 11インチ欲しい!

PHP の JpGraph を日本語対応する

Ubuntu 10.10 上で PHP のグラフ描画ライブラリ JpGraph 3.5.0b1 を試してみた。日本語対応するには、 http://blog.syuhari.jp/archives/408 に書いてあるとおりなんだけど、IPAフォントでなくてもいけた。今回は、Takaoフォントを使用してみた。

Ubuntu で起動時に iptables を設定する

http://www.atmarkit.co.jp/flinux/rensai/iptables208/iptables208a.html を参考に。現在の iptables の設定を保存。(事前に iptables の設定はすましておく) sudo iptables-save | sudo tee /etc/iptables.rules/etc/network/if-pre-up.d/iptables_start …