Windowsでプログラミングをするときに,これだけは知っておきたいTipsや設定を集めました。これらの知識は,プログラムを作るとき,実行するとき,トラブルを解決するときにどうしても必要になります。きっちり覚えておきましょう。なお,ここで紹介するWindowsは,基本的に「Windows XP」を指します。「Windows 2000」「Windows Vista」など他のバージョンでは使えない場合があります。

 Windowsに付属しているIIS(Internet Information Services)と,ほぼ業界標準になっているApache(Apache HTTP Server)は,ともにHTTPサービスです。両者を1台のパソコンに同時にインストールすることはできますが,同時稼働させるとポート80番という同一ポートの監視を行うためバッティングが発生し,後から起動したほうがエラーとなって終了します。

 1台のパソコン内にIISとApcheをうまく同居させるには,二つの方法があります。

(1)必要がないときは片方を停止し片方だけ起動する

 一番簡単な方法です。サービス・ウィンドウで稼働中のApacheあるいはWorld Wide Web Publishing(これがIISのサービス登録名です)を停止し,もう一方を開始します。あるいはコマンドプロンプトで

net stop apache
net start "world wide web publishing"

といった具合にして切り替えます。サービス名はすべて小文字でかまいません。なお,IISのようにサービス名の中にスペースを含むものは,サービス名を「"」でくくる必要があります。

(2)一方のHTTPサービスが使用するポート番号を変更する

 変更が簡単なApache側を変える方法を紹介しておきます。Apacheの設定は,C:\Program Files\Apache Group\Apache\confにある「httpd.conf」というファイルに記述されています。その中の「Port 80」という記述(Apache 2.xの場合は250行目あたり)を探して,任意のポート番号に変更し,Apacheを再起動すると変更が反映されます。

 変更ポートは8888や8000などがいいでしょう。しかし,これらのポートを別のアプリケーションが使用している場合もありますので,起動時メッセージでエラーが出たら別のポート番号を指定してみてください。仮に8888に変更できた場合,以下のようなURLでそれぞれアクセスができます。

http://localhost/ → IISに
http://localhost:8888/ → Apacheに

 8888にしたApache側では,リンクでの移動などでもポート番号を明記しないと,移動の瞬間に80番側に動いてしまい,IISのコンテンツにつながってしまいます。無理矢理同居はできるものの,こうした面倒もあるので,どちらか一方が起動しているときは他方は止めるとしたほうがいいと思います。