Windows版のLANPパッケージ、Wamp Serverを立ち上げて外部からも見えるようにしようと思ってハマりました。
Wamp Serverで外部アクセスする設定
Lamp(ランプ)というのは軽量Webアプリケーションを立ち上げるのによく使われるパッケージ、Linux(OS)、Apache(httpサーバ)、mySQL(データベース)、PHP(アプリケーション)の略ですが、これがWindowsで動かすと最初のLinuxがWindowsに替わってWamp(ワンプ?)、となります。これをインストーラー一発で入れてくれるのがWamp Server。
WampServer download | SourceForge.net
これ、起動すれば簡単にWampの構成が立ち上がるので便利なんですが、基本ローカル、wampを使ってるローカル環境向けに設定されています。
これを外部公開、ネットワークの他のPCから見れるようにする・・・というところでハマりました。
Apacheが入っているだけなので、普通にhttpd.confとかをいじればOK(実際にはhttp-vhosts.conf)だと思っていて、中を見ると「Require Local」とかあるので、これが怪しい、と思って消しても・・・ダメ。
変わりにお決まりの「Order Allow, Deny」「Allow From All」とか付け足してもだめ。
AH01630: client denied by server configuration:
というログが延々出てました。
もちろんローカルのアクセスはOK。そんなに設定変わらないんだけどな・・・と思って色々調べてみると「ん?」と思える記述が。
どうやら「Require all granted」という指定ができるようです。
<VirtualHost *:80> ServerName example DocumentRoot "c:/wamp64/www" <Directory "c:/wamp64/www/"> # Options +Indexes +Includes +FollowSymLinks +MultiViews # AllowOverride All Order allow,deny Allow from all Require all granted </Directory> </VirtualHost>
こういうの初めてみたのでちょっと驚きでした。
追記:require
最近のApacheで新しく追加されたようですね、require。
require ipとかrequire localとか書けるみたいです。