Webアプリと連携するAndroidアプリを開発する際に、同じOS上にサーバー側の開発環境とAndroidの開発環境を立てるのが嫌だったので、VMwarePlayerを使って、ホストOSとゲストOSで開発環境を分けて持つようにしました。
ホストOS:Windows 7 Home Premium (64bit), 開発環境:Plaeiades3.6 (2011/3/26)
ゲストOS:Ubuntu 10.04 LTS (32bit), 開発環境:Eclipse3.5 + ADT 9.0.0 + Android SDK r9
ホスト側の環境はPleiadesをインストールするだけなので、基本的には問題なく動作します。
しかし、デフォルト設定のままでは、ゲストOS側からXAMPPのウェルカム画面(http://localhost/xampp/のこと)にアクセスしようとすると、アクセスが禁止されているという画面が表示されます。そこで、localhost以外からのIPアドレス指定でのアクセスを許可しました。
これは、 C:\pleiades36php\xampp\apache\conf\extra にある httpd-xampp.conf の設定を
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))"> Order deny,allow Deny from all Allow from 127.0.0.0/8 ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var </LocationMatch>
から
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))"> Order deny,allow Deny from all Allow from 127.0.0.0/8 192.168.0.0/24 ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var </LocationMatch>
のように変更します。これで、ゲストOS側からもXAMPPのウェルカム画面を見ることができるようになりました。
なお、サーバー側で開発したWebアプリへのアクセスは、上記の設定にかかわらずIPアドレス等を指定すればアクセスできると思います。
メモ1:Skypeとの競合
最初、XAMPPをコントロールパネルから起動すると、どうも正常にApacheが起動しません。ネットを調べてみると、Skypeが動いている場合、Skypeがポート80を使っているので、そのためApacheが起動できないようです。
今回は、開発時にはSkypeを切ることで対応することにしました。なお、Skypeの設定を変更することで、ポート80を使わないようにもできます。
http://labs.uechoco.com/blog/2007/12/xamppskypeapache.html
メモ2:UbuntuでのXAMPPのインストール
最初、Ubuntu上でXAMPPを動作させることも考えました。XAMPPのインストールは非常に簡単で、下記の記事を参考に手順通りにすれば問題なく動作しました。
https://wiki.ubuntulinux.jp/UbuntuTips/Server/Xampp
http://www.overcube.com/wordpress/%E3%81%86%E3%81%B6%E3%81%86%E3%81%B6ubuntu/xampp-on-ubuntu (Ubuntu上でのXAMPPコントロールパネルの登録方法g載っています)