iMac(20-INCH MID 2007)-YosemiteをWebサーバーにしてみた

先日修理してYosemiteになったiMac(20-INCH MID 2007)をWebサーバーにしてみた記録。

Apacheの起動と停止

HDDを交換して無事復活した我が家のiMac(20-INCH MID 2007)-Yosemite、ふと思い立ってWebサーバーにも活用しようかと思い調べてみると、なんとMacにはWebサーバーのApacheが標準で入っているじゃないですか。

早速起動してみる。
ターミナルから”sudo /usr/sbin/apachectl start”を実行して動作を確認。httpd_start

アパッチのバージョンも確認。
ターミナルから”httpd -v”を実行
check_httpd_version
さすが最新のOS、バージョンも新しめのApache/2.4.9でした。

ブラウザからも確認。
Safariでhttp://localhostへアクセス。

httpd_start_safari
起動確認終了。

Apacheを止めるときは”sudo /usr/sbin/apachectl stop”
httpd_stop

ブラウザからも確認
Safariでhttp://localhostへアクセス。
httpd_stop_safari

起動/停止用のエイリアス作成

いちいちターミナルを立ち上げて起動するのはめんどくさいのでもっと簡単に起動できるようにコマンドファイルを作成してマウスの操作だけで起動、停止が出来るようにしてみました。

まず書類の所にWebフォルダを作成
web_folder
次にテキストエディタでApache起動用ファイルを作成。
内容は
#!/bin/bash
sudo /usr/sbin/apachectl start
apache_start_command
これを”apache_start.command”の名前で先ほど作成したWebフォルダに保存。
apache_start_shell_inbox
ついでに停止用のファイルも作成。
内容は
#!/bin/bash
sudo /usr/sbin/apachectl stop
apache_stop_command
これもWebフォルダに”apache_stop.command”の名前で保存。
apache_stop_shell_inbox

これでターミナルを使用しないで起動・・・・出来ません。
ファイルをクリックすると
NG
となるはずです。

そこで作成した”apache_start.command”ファイルに実行権限を付与します。
ターミナルから”sudo chmod u+x /Users/user0x/Documents/Web/apache_start.command”を実行します。
ターゲットファイルのパス”user0x“の所はMacのユーザー名になります
実行権限を外すときは”sudo chmod u+x /Users/user0x/Documents/Web/apache_start.command”

同じ様に停止用のファイルにも実行権限を付与します。
ターミナルから”sudo chmod u+x /Users/user0x/Documents/Web/apache_stop.command”を実行します。

コマンドが反映されているかを確認します
check_add_x
目的のファイルの最後部に*マークが付いていればOKです。

これでクリックすると以下のウィンドウが立ち上がってAapaceが起動します。
result_start
これでターミナルを起動することなくApacheの起動/停止が出来るようになりました。

DocumentRoot(公開フォルダ)へのエイリアス作成と権限付与

ローカル内でFTPとか面倒なのでapacheのDocumentRoot(公開フォルダ)へのエイリアスを作成します。
Finderのメニュー”移動”から”フォルダへ移動”をクリック
フォルダの場所を入力の欄に/Library/WebServerと入力して”移動”

move_to_documentroot

開いたフォルダ内のDocumentsのフォルダをOption キーと Command(⌘)キーを押したまま、先ほど作成したWebフォルダにドラッグしてマウスボタンを放した後にOption キーと Command キーを放します。

add_alias

これで公開フォルダへのアクセスが楽になりました。
しかしこれで終わるとDocumentsフォルダにアクセスするたびにパスワードを入力する羽目になるのでDocumentsフォルダを右クリックして情報を見るを開き”共有とアクセス権”の所へ自分を追加しておきます。

add_permission

最後に念のため、ディスクユーティリティからディスクのアクセス権を検証を実行。
“ACLが見つかりましたが、予期していたものではありませんでした”との結果。
check_permission

ACLについて調べてみるとAppleのSupportページにこんな回答が。
“Mac OS X:ディスクユーティリティのアクセス権の修復で無視しても構わないメッセージが表示される”

最後の所に”これらのメッセージは無視して構いません。また、「ACL は見つかりましたが…」から始まるすべてのメッセージも無視できます。”とある。
無視しても構わないと言われてもとりあえず”ディスクのアクセス権を修復”をクリック。
repair

修復できたみたい。

基本的な設定は以上で終了。(PHPとかは動かないのでまた今度)