PHPスクリプトの動作を確認するため、パソコンにXAMPPをインストールしてWEBサーバーの環境をつくりました。XAMPPは、XAMPP USB Lite 1.7.7のZIP版をC:/xamppフォルダに展開してインストール完了です。C:/xamppフォルダ内にできたxampp-control.exeを起動してApacheとMysqlのスタート釦を押してサービスをスタートします。この状態で、ブラウザのURL欄にhttps://localhost/を入力すれば、XAMPPの管理画面が開くはず・・・。
ところが、接続待ちの状態でlocalhostにつながりません。この症状はかなり起きているようで、ググると沢山でてきます。SKYPEがじゃましているとか、ファイヤーウォールを切ればいいとか・・原因はいろいろです。そこで、ポートの競合を調べたり、ウィルス対策ソフトを一時停止したりと、考えられる対策を手当たり次第取ったのですが・・それでもlocalhostは起動しませんでした。
そのような対策中、私の環境でlocalhostに繋がったのは、xampp-control.exeの起動前にコマンドプロンプトで”netsh winsock reset”を実行した時でした。それに喜んでパソコンを再起動すると、また繋がらなくなります。
そこで更に調べてみると…..ウィルス対策ソフト(ウイルスセキュリティ)のファイヤーウォールでwinsockを制限していることが原因で、localhostが起動しないようです。これはウィルス対策ソフトの一時停止では解決しません。ウィルス対策ソフトは一時停止になってもwinsockの設定を元に戻さないんです。とすれば、xampp-control.exeの起動前に毎回”netsh winsock reset”を実行すれば何とかなりそうです。そこで、次のようなバッチファイルを作りました。
netsh winsock reset
c:/xampp/xampp-control.exe
このバッチファイルを試しに使ってみると…ウィルス対策ソフト(ウイルスセキュリティZERO)を一時停止しなくても、localhostが起動するようになりました。
ウイルスセキュリティZEROを使っていて、同じ症状の方のご参考になれば幸いです。