[Windows]Windows7 Home Premium のリモートデスクトップのホストになれるようにする

Windows7 Home Premium

デフォルトではリモートデスクトップのホスト側になれません。

Professional
スクリーンショット 2013-06-16 21.10.06

Home Premium
スクリーンショット 2013-06-16 21.11.13

※プロフェッショナルで設定できる項目がHome Premiumにはありません。

解決策

Concurrent RDP Patcher.exe をダウンロードして、パッチをあててください。
※SP1とそれ以外で実行ファイルが異なるので注意してください。

[PHP]Windows(XAMPP環境)でmemcachedを使う

memcachedとは

YouTube, Wikipedia, SouceForage, Facebookといった大規模有名サイトで利用されている分散型メモリキャッシュシステムである。利用方法としては、データベースの検索結果をmemcached内に保持し、データベースのアクセスの前にmemcached内のメモリを読み出して、なるべく低速な記憶媒体へのアクセスを減らすことに利用される。memcache内のメモリ領域を超えた場合は、以降の新規データ挿入は一番最後に利用されたキャッシュの順に削除される。
これは、Javaのサーブレットアプリケーションのようにサーバ内にプロセスが常駐してメモリを共有する機構のない言語、即ちPHPなどのスクリプト系の言語で利用される。

wikipediaより

インストール手順

大きく以下の流れで設定をしていきます。前提としてXAMPPがインストールされている必要があります。

1. memcachedをインストールする
2. PHP extensionとしてのmemcachedをインストールする

1. memcachedをインストールする

インターネットからダウンロードしてきて適切なディレクトリに配置します。実態はexeファイルひとつのみです。

以下にダウンロードリンクをはりつけておきます。
http://code.jellycan.com/files/memcached-1.2.5-win32-bin.zip

memcachedをC直下に配置した場合のサービスの登録方法(C:¥memcached¥memcached.exe)
ファイル名を指定して実行から以下のコマンドを発行します。

C:¥memcached¥memcached.exe -d install

memcachedの起動方法
ファイル名を指定して実行から以下のコマンドを発行します。

C:¥memcached¥memcached.exe -d start

PHP extensionとしてのmemcachedをインストールする

インターネットからダウンロードして適切なディレクトリに配置します。例えば、XAMPPのホームが「C:¥xampp」の場合はダウンロードしたファイル(php_memcache.dll)をC:¥xampp¥php¥extに配置してください。

次に、PHPの設定ファイル(php.ini)を開き有効化を行います。
php.iniを開き、extensionを追加します。またはコメントアウトされている場合、そのコメントアウトをはずします。

extension=php_memcache.dll

memcacheの設定を追加します。

[Memcache]
memcache.allow_failover = 1
memcache.max_failover_attempts = 20
memcache.chunk_size = 8192
memcache.default_port = 11211

以下にダウンロードリンクをはりつけておきます。
http://downloads.php.net/pierre/php_memcache-2.2.6-5.3-nts-vc9-x86.zip
http://downloads.php.net/pierre/php_memcache-2.2.6-5.3-vc9-x86.zip

確認

まず、phpinfo()にmemcacheが有効化されていることを確認ください。その後、サンプルコードを作ってみて。

[PHP]Netbeansとxdebugでデバッグする

PHPをdebugするためのエクステンション。パフォーマンスに影響を与える可能性があるので本番環境では利用しないほうがよい。

動作確認環境

ソフトウェア バージョン
OS Windows
xampp 1.7.7
PHP 5.3.8
Netbeans IDE 7.1.2
xdebug 2.1.1

PHP設定ファイルの編集

xamppをインストールしたディレクトリ下の、php/php.iniを編集します。

xdebug.remote_enable = on
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000
xdebug.idekey = netbeans

設定が完了したらApacheを再起動してください。
※設定が反映されているかは、phpinfo関数を利用します。

Netbeansの設定

ツール(T)>オプション(O)>PHPタブ>デバッグタブを選択

デバッグポート(G)を9000(php.iniのxdebug.remote_portと一致)
セッションID(D)をnetbeans(php.iniのxdebug.idekeyと一致)

デバッグする

任意の箇所にデバッグポイントをつけたら、デバッグ(D)>プロジェクト(***)をデバッグ(D) (Ctrl + F5)にてデバッグを開始します。

はまりポイント

Windows 7 Professionalの環境だと、xdebug.idekeyはphp.iniで設定しなくてもデフォルトでPCの「ユーザ名(hogeでログインしているならhogeが)」が表示されていましたが、Windows XP Professional環境だと「no value」となっていました。どのサイトをみても、xdebug.idekeyが記述してあるサイトにうまいことヒットしなかったので地味にはまった。

[Windows]このソフトウェア・アプリはよく使うシリーズ(3)

Web Service

こんなWebサービスを利用しています。

Google Calnedar

クラウド上でスケジュールやタスク管理ができるWebサービス。マイカレンダーの利用や表示単位(日・週・月)や友達とのカレンダー同期などの機能を使えることが可能で、サードパーティ製のビューアが多く存在するのもこのサービスを利用するメリットの一つだろう。APIも公開されているのでチェック

Toodledo

クラウド上でTODOリストを管理するWebサービス。各々のタスクに対する優先順位付けや期日設定など基本的な機能はあり、サードパーティアプリも多く存在するのでお勧め。またGoogleサービスとの親和性(Google Calnedarとの連携も可能)が高い。

Go to Site -> Toodledo

Gmail

フリーのメールサービス。普通の使い方の他に、自宅環境にはメールサーバがないので、Redmine等メールを送信する機能を有したソフトウェアを動かす時に利用させてもらっている。
RedmineでGmailを利用する方法
Go to Wiki -> Gmail

Cloud9 IDE

Web上の統合開発環境。クライアントアプリケーションと比較すると使いやすさはまだまだだが、かなりよくできている。その他のWebサービスとの連携もすばらしく、GitHubやHerokuやAzureとも簡単に連携可能です。

Go to Facebook -> Cloud9 IDE

SAKURA Internet

VPSサービスの一つ。VPSとは、共用サーバを仮想的に専用サーバのように見立てて提供するサービスのことで、VPSの正式名称はVertual Private Server。

Go to Site -> Sakura Internet

github

SVNの後継ともいえるコードのホスティングサービス。私的利用する分には無料アカウントで100Mまで管理が可能なので問題ない(コードは世界中にまる見え)。

heroku

RubyアプリケーションのPaaS(Platform as a Service)。動作するアプリケーションはRuby, Node.js, Clojure, Java, Python, Scalaと多種多様。
Go to Chat Application
Go to Site -> Heroku

Work

PuTTY, Tera Term

Windows環境においてSSHでリモートサーバに接続するソフト。SSHの詳細な設定ができたり、接続サーバの情報を保存できたりする。

Go to Wiki -> PuTTY
Go to Wiki -> Tera Term

サクラエディタ, 秀丸エディタ

Windows用テキストエディタ。Windowsでもデフォルトでノートパッドやワードパッドが入っているが、サクラエディタはコード補完機能やハイライト機能を備えておりコーディングに向いている(IDE程ではないが簡易エディタとしては十分)。文字コードや改行コードの変換も可能。

Go to Wiki -> サクラエディタ
Go to Wiki -> 秀丸エディタ

CubePDF

ワードやエクセルをPDFに変換するソフト。インストールするとプリンタの用に振る舞い、印刷するように操作し、プリンタとしてCubePDFを選択することで出力可能。

Go to Site -> CubePDF

Mobilizer

スマートフォンのエミュレータとなるアプリ。iPhoneやAndroidのスマートフォンをエミュレートしてくれる。スマホ向けのWebサイト作成時に、動作確認用に利用できる。Adobe Airで動いているのでAirのインストールが必要。

Go to Site -> Mobilizer

WinSCP

フリーのコンピュータ間ファイル転送ソフト。

Go to Site -> WinSCP
Go to Wiki -> WinSCP

Cygwin

Windowsで動くUNIXライクな環境。UNIXでよく使うコマンドなどが実行できるとともにC言語の開発をWindows上で行いたいときなどに重宝する。他の利用シーンとしてはWindows上にあるファイルに対してgrepをかけたいときや、「あれ、あのファイルどこにやったっけ?」というときにfindコマンドを使うとき。WEB上からファイルを落としたいときでブラウザを開くのがめんどくさくパスがわかっているときにwgetを使うとかか。。。
Go to Site -> Cygwin
Go to Wiki -> Cygwin

Lhaplus

ほとんどの圧縮と解凍に対応したフリーソフト。
圧縮:b64, bh, bz, cab, gz, lzh, tar, tbz, tgz, zip, jar, uue, xxe, exe
解凍:ace, arc, arj, b64, bh, bz2, cab, gz, lzh, lzs, mim, rar, tar, taz, tbz, tgz, uue, xxe, z, zip, jar, zoo, exe
Go to Site -> Lhaplus