目次

  1. 共有サイト作成について
  2. DHCP-IPで接続できる共有サイトを作成する
  3. 固定IPアドレスで接続する共有サイトを作る

 

1. 共有サイト作成について

ユーザー共有サイトが無くなった?

特定のMacに構築したサイトに、同一ローカルネットワーク上のコンピュータからアクセス可能な環境をつくります。

このような共有サイトは、Lion OSまでは「Web共有」という名称でGUI上からもサポートされていましたが、Mountain Lion(OS X Serverではサポートされているらしい)ではアップル環境設定>共有のリストから省かれています。

前回の記事で作成したサイトは自分のMacからのアクセスに限定しておりました。ここではLionまでのユーザー共有サイトのように、同一ネットワーク上で共有できるサイトを構築していきたいと思います。

 

DHCP-IPで接続 or 固定IPアドレスで接続

ここでは、2種類の方法で、共有サイトを作成していきます。

DHCP-IPで接続できる共有サイトを作る

共有サイトを置くMacが動的IPアドレス(ローカルネットワーク内のIPアドレス)の場合でも対応できるようなサイトを作ります。これはLion OSで、「パーソナルWeb共有」という名称でサポートされていた仕組みに近い形で動かします。

固定IPアドレスで接続する共有サイトを作る

前回記事までと同様に作成したWebサイトを、同一ネットワーク上のコンピュータからアクセス可能にします。IPを固定しなければならないのが面倒ですが、任意のサイトをお手軽に共有状態に変えられる方法です。

 

 

2. DHCP-IPで接続できる共有サイトを作成する

サイトのイメージ

下図のような、Lion OSのパーソナルWeb共有に似た機能を持つサイトを作成します。

イメージ図を挿入する!

 

Sitesフォルダを作成する

mkdir ~/Sites

これはMountain Lion OS上は特別扱いのフォルダで、作成するとアイコンの柄が変化します。

 

httpd-vhosts.confを編集する

共有サイト用のバーチャルホスト設定を行います。ここでは、複数あるVirtualHostコンテナのうち、先頭になるようにコードを挿入します。

httpd-vhosts.conf(挿入)

※”username“には、自分のアカウントのホームフォルダ名を入れてください。
オレンジ字は、この共有サイトのものであることが分かればOKです。

<VirtualHost *:80>
    ServerName localhost/~username
    DocumentRoot "/Users/username/Sites"
    ErrorLog "/private/var/log/apache2/localhost~username-error_log"
    CustomLog "/private/var/log/apache2/localhost~username-access_log" common
    <Directory "/Users/username/Sites/">
        AllowOverride Fileinfo Options
        order deny,allow
        deny from all
        allow from localhost 127.0.0.1 192.168
    </Directory>
</VirtualHost>

アクセス許可するIPアドレスとして、192.168を追記しました。192.168はローカルネットワーク内で利用するために割り当てられた範囲です(たぶん、多くの方の環境もそういう指定で動かしているはず)。これによって、同一ネットワーク内のコンピュータからのアクセスを許可し、サイト閲覧することが可能になります。

※補足:接続できるコンピュータのIPアドレスを限定したい場合は、192.168という指定ではなく、個別のIPアドレス(192.168.0.2 192.168.0.7・・・という感じで)を複数指定することもできます。

 

サイトにアクセスする(動作確認)

1)まずは、自分のMac上からアクセスできるかどうかを確認します。

http://localhost/~username

またはusernameを省略した、下記URLからでも表示されるはずです。

http://localhost

バーチャルホストを利用してサイト制御している場合にlocalhostにアクセスすると、最初のVirtualHostコンテナのサイトが表示されます。

2)次に、同一ネットワーク上のコンピュータからアクセスします。
次のどちらでもOKです。また、最後のスラッシュ以下を省略しても接続できます。

http://IPアドレス/~username
http://コンピュータ名/~username

補足:コンピュータ名は、アップルメニュー>環境設定>共有 を開くと、画面上に書いてあります。

コンピュータ名を使って接続すれば、ルーターから割り当てられたIPアドレスが変わっても対応できるのが便利です。

 

他のユーザーアカウントの共有サイトを作る

他のユーザーアカウントで同様のサイトを作成して、ともに共有することもできます。この場合は、httpd-vhosts.confに、新しいVirtualHostコンテナを挿入し、そのアカウントのユーザ名に即して同様の設定文を記述していけばOKです。サイトに接続するときも、ユーザー名を置き換えればOKです。

http://IPアドレス/~new-username
http://コンピュータ名/~new-username

 

共有サイトにまつわる不具合?

前項の方法によって複数のアカウントの共有サイトを作成した場合、httpd-vhosts.confで設定した内容が正しく反映されないことがあるようです。複数のサイトに関わる設定情報が1つのhttpd-vhosts.confファイルに書かれていますが、他のアカウントに関わる内容を(管理者権限で)編集&保存しても、反映されませんでした。

つまり、「自分のアカウントに紐づいたサイトのことは、自分で編集しないといけない」ということになります。これって仕様なのか、バグなのか原因は分かりませんが、ご注意ください。

 

 

3. 固定IPアドレスで接続する共有サイトを作る

今度は、前回記事で作成したサイトの1つ(localweb1.net)を、ローカルネットワーク上で共有できるようにします。

httpd-vhosts.confを編集する

変更点は一カ所だけで、allowディレクティブに対する引数に、共有したいコンピュータのIPアドレスを追加するだけです。例えば、こんな感じ。

allow from localhost 127.0.0.1 192.168

 

接続したいコンピュータのhostsを書き換える

共有サイトのホスト名から、共有サイトが乗っかっているMacのIPアドレスに飛べるように指定します。

hosts(追記)

例:IPアドレスが192.168.0.2の場合

192.168.0.2 localweb1.net

接続元のコンピュータがWindowsの場合でも、Windowsのhostsファイルに同様の指定をすればOKです。

つぶやき(駄):数台のコンピュータで共有することを前提に書いています。共有したいマシンの数が増えると、全部のhostsファイルを書き換えるなんて相当面倒ですよね。。あと、最近はiPadで見たい!という需要もあると思うんですが、iPadのhostsファイルは書き換えにはjail breakが必要になってしまうので、結局のところ、本格的にやろうと思うと代替DNSが必要になる・・・とか考え出すと尽きないです。

 

動作を確認する

httpd-vhosts.confで許可したIPアドレスを持つ、かつhosts設定を行ったコンピュータから、サイトURLにアクセスするだけです。

http://localweb1.net

 

次の記事:第7回 MySQLをインストールしてPHPと接続する

前の記事:第5回 Mountain Lionでバーチャルホスト設定を行う

 

「MacにWeb開発環境を構築する」の記事