Virtualbox を使って仮想マシン上で WEB 実行環境を
今まで Windows 上に Apache やら PHP やらをインストールしてきました。しかし実際にアップするサーバーOSは Linux。それでも今までは特に動かないとか動作が違うといったことはほぼなかったと思います。
しかし、Virtualbox で仮想化したサーバー上で簡単に実行環境が作れてしまうことを知って、これから徐々に変えていこうと思ってます。
で、ネットワークを設定した時のメモ。目的はゲストOSに固定IPを設定して、ホストOSからのアクセスのみとして利用するまで。
Virtualbox と 目当ての OS はインストール済として、
1.Virtualbox の環境設定でネットワークを確認
デフォルトの設定では、既に「Virtualbox Host-Only Ethernet Adapter」が登録されています。192.168.56.* が割り当てられていて、DHCPが有効になっているのを確認します。
2.ゲストOSのネットワーク設定で、ネットワークアダプタ2を有効化
「アダプタ1」を「NAT」、「アダプタ2」をホストオンリーアダプタにして上記の「Virtualbox Host-Only Ethernet Adapter」を設定。
Kohana-Kdmail モジュールの公開
まだ開発中ですが、Kohanaモジュールを Github.com にアップしました。
Kdmail - the multi-byte mail decoder and POP mail client
https://github.com/ele-eel/kohana-kdmail
QdmailReceiver を、Kohanaモジュール用にしました。色々手を加えようと試行錯誤しましたが、クラスを再構成するのは難しいですね・・・。加えて拙い英語や使い方の不足などなど、恥ずかしながらとりあえず公開してみることにしました。
ThinkPad Edge E420 に Intel mSATA SSD 80GB
ThinkPad Edge E420 には mSATA というスロットがあります。mSATA という名称の通り、SATA 規格の一つです。実際に発売されている mSATA カードは SSD だけみたいですね。mSATA の SSD は容量の割に高いので、安ノートPCに入れるのはどうかと思いましたが、せっかくのスロットを有効利用しようということで Intel の80GB のSSD [SSDMAEMC080G2C1] を買ってみました。
取り付けはいたって簡単。裏面を外せばすぐに取り付け完了しました。困ったのは mSATA に OS をインストールする時。リカバリーディスクから新規インストールしようとしたら、どうやってもCドライブにしか OS をインストールができません。(HDDがC、SSD がD)
解決としては、HDD を外し、BIOS で mSATA の優先順位は上げ、リカバリーディスクで立ち上げると mSATA が Cドライブとして認識されました。インストール後、容量が 80GB しかないため、リカバリー領域は削除しました。その後、HDD を入れました。ノートPCでデュアルドライブができるなんて。いやあ、快適。
以下ベンチマーク。同機種のベンチマーク値と比べると、若干書き込みが遅いのは、OS をインストールして空き容量が少ないからなのかな?
Windows7 PHP5.3.8 で ImageMagick を使う
PHP5.3.8 で ImageMagick の PHP モジュール imagick.dll をアクティブにしてみます。
1.imagick.dll をダウンロード
下記のサイトから dll をダウンロードします。
http://valokuva.org/magick
ここでも x86 / VC9 / スレッドセーフ の最新バージョンをダウンロードします。
2.ImageMagick のインストーラをダウンロード
ImageMagick のインストーラは、バージョンの選択を間違うと動作しません。imagick.dll の配布サイトのコメントを参考にして、バージョンを選択します。
The Imagemagick site builds are now done with VC10 version. This means you need to find an older VC9 build. The last version I found built with VC9 was 6.6.2-10 from this site:
http://image_magick.veidrodis.com/image_magick/binaries/Imagemagick 公式サイトでは VC10 でビルドされている。だから VC9 でビルドされたものを見つける必要がある。VC9でビルドされた最後のバージョンは ImageMagick 6.6.2-10だ。
ということで、6.6.2-10を利用します。
http://image_magick.veidrodis.com/image_magick/binaries/
ImageMagick-6.6.2-10-Q16-windows-dll.exe
3.ImageMagick のインストール
インストーラを実行します。今回もインストールディレクトリを Cドライブ直下にしておきます。
インストールオプションで、環境変数でパスを通しておきます。
4.PHP の設定
php_imagick_ts.dll を PHP の extension ディレクトリに入れます。
c:\php5.3.8\ext\php_imagick_ts.dll
php.ini に DLLの記述を追加します。
extension=php_imagick_ts.dll
Apache を再起動して、phpinfo() で確認します。
5.実行の確認
「test.jpg」を「test.png」に変換するスクリプトを実行してみます。
<?php try { $im = new Imagick('test.jpg'); $im->writeImage('test.png'); echo 'converted !'; } catch(Exception $e) { echo 'ERROR! :'; echo $e->getMessage(); }
無事変換されれば、インストール完了です。
Windows7 で PHP5.3.8 の開発環境を整える
引き続き、Windows7 での PHP 環境について。前回の PHP インストールの環境があるものとします。
XDebug のインストール
開発環境ではあると便利な XDebug をインストールします。
http://xdebug.org/download.php
ここでまた出てきました「VC9」。ダウンロードすべきものは VC9 スレッドセーフ 32bit です。
ダウンロードした dll ファイルを PHP の extension ディレクトリに入れて、php.ini を編集します。
[XDebug] zend_extension = c:\php5.3.8\ext\php_xdebug-2.1.2-5.3-vc9.dll xdebug.dump.GET=* xdebug.dump.POST=*
XDebug の設定のオプションは他にも色々あります。
XCache のインストール
XCache のような PHP アクセラレータは、開発環境でも、特にフレームワークを利用する場合は入れておくといいと思います。
http://xcache.lighttpd.net/pub/Releases/1.3.2/
ここでもダウンロードすべきものは VC9 スレッドセーフ 32bit です。
解凍したディレクトリから php_xcache.dll を PHP の extension ディレクトリに入れます。
次に xcache.ini の内容を php.ini に丸ごとコピペして、extension パスのみ変更します。
[xcache-common] ;; install as zend extension (recommended), normally "$extension_dir/xcache.so" ;zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so //コメントにする ; zend_extension_ts = /usr/local/lib/php/extensions/non-debug-zts-xxx/xcache.so ;; For windows users, replace xcache.so with php_xcache.dll ;zend_extension_ts = c:/php/extensions/php_xcache.dll //コメントにする ;; or install as extension, make sure your extension_dir setting is correct ; extension = xcache.so ;; or win32: extension = php_xcache.dll //ここのコメントを外す
Windows7 に Apache と PHP5.3.8 を10分でインストール
PHPの開発環境を5.3.8にしたのでメモ。
インストールをスムーズに行うキーワードは、「VC9」です。VC9 (Visual C++ 2008)とはコンパイラのバージョンです。これはインストール後に、PHP のモジュールを利用する際にも関係します。
PHP5.3.8 では、ウィンドウズ用バイナリが VC9 のみの配布となっています。PHP のダウンロードページには
Do NOT use VC9 version with apache.org binaries
VC9 versions of Apache can be fetched at Apache Lounge. We use their binaries to build the Apache SAPIs.
apache.org の VC9 バイナリファイルを利用するな。俺らも使ってるから、Apache Lounge のものを使え。
とありますので、Apache は Apache Lounge にあるものを利用します。
1.PHPのインストールファイルを取得
http://windows.php.net/download/
ZIPアーカイブをダウンロードします。Apache で利用するので Thread Safe にします。
スレッドセーフとは? http://www.php.net/manual/ja/faq.obtaining.php#faq.obtaining.threadsafety
2.Apache のインストールファイルを取得
http://www.apachelounge.com/download/
上記 PHP は32bit版なので、Apacheも合わせます。
3.アーカイブの解凍と Apache の設定
解凍したディレクトリはどこに置いても大丈夫です。今回はCドライブ直下に置くことにします。
次に Apache の設定を変更します。
c:\apache2\conf\httpd.conf #35行目あたり ServerRoot "c:/apache2" #179行目あたり DocumentRoot "c:/apache2/htdocs" #206行目あたり <Directory "c:/apache2/htdocs">
最終行に PHP の設定を追加します。
PHPIniDir "c:/php5.3.8" LoadModule php5_module "c:/php5.3.8/php5apache2_2.dll" AddType application/x-httpd-php .php
Apacheのドキュメントルートは c:/apache2/htdocs になりました。
5.Apache の起動
コマンドプロンプトで起動します。
>c:\apache2\bin\httpd.exe httpd.exe: Could not reliably determine the server's fully qualified domain name, using ****:****:****:**** for ServerName
と表示されば成功です。ブラウザでローカルホストで見てみましょう。
It works!
6.PHP の動作確認
次に PHP の動作を確認します。Apache のドキュメントルート c:/apache2/htdocs に「info.php」というファイルを新しく作ります。ファイルの内容は以下。
<?php phpinfo();
これで PHP の設定が表示されればOKです。
以上でインストール完了です。
Apache が起動しない場合
エラーログを見ます。場所は c:/apache2/logs/error.log にあります。
ThinkPad Edge E420を買う
約二年半ぶりにノートPCを新調しました。前々からSandy Bridgeは見送って、次のIvyまで絶対に待ちだと思っていたところ、レノボの激安モデルを発見してしまい、ほぼ衝動買い。ベース自体5万円を切る格安モデルな上、なんと二日間限定さらに20%引き。これなら万が一のことがあっても諦められるかな、と思いました。
スペックは
オプションはほぼ全部載せ、これでも5.1万円くらい。安い。
失礼な話、普段だったらレノボは選択肢として入らないようなメーカーでした。実際にモノを見るとなかなかできはいいですね。天板のLenovoのロゴがなかったらデザイン的には満足かな。キーボードもなかなかよい。液晶パネルの質も値段相応って感じ。分厚くて重いですが、グラフィックボードもついていないため、そのぶん冷却に余裕があるようで、熱くなってファンがうるさいってこともないです。
今回、初の64bitのWindows7を使い始めました。ここぞとばかりにメモリをプラス4Gいれて自己満足。しかし、4G×1枚より4G×2枚のほうがWindowsのスコアのメモリ関連がかなり上がりました。処理能力には何の不満もないです。
不満としては、キーボード配列が使いづらい。DeleteキーがHomeとEndキーの左にあるとか、左下の角のキーがFunctionだったり。キータッチはとてもいいので惜しい。とにかくいい買い物でした。