深く考えずに Mighttpd をさわってみた (2)

そもそもの大間違いとして、インストールするべきパッケージは mighttpd ではなく mighttpd2だということに気づいてしまったので、最初からやりなおしです。

$ cabal install mighttpd2

ドライランとかしません、依存パッケージとかは HackageDB を参照してください。

……さて、mighttpd2 というコマンドがインストールされるのかと思いきや、意表をついて mighty らしいです。とりあえず実行してみます。

$ mighty 
Usage: mighty config_file routing_file

$

mighttpd とほんとんど変わらないみたいですね。map_file は routing_file という名前になったらしいです。

昨日と同じように、~/Library/Haskell/ghc-7.0.3/lib/mighttpd2-2.3.0/share/ にあるサンプルファイルを trial.conf、trial.route としてコピーし、trial.route のほうは以下のように編集します。

# Sample routing for Mighttpd 2

# Domain lists
[localhost]

# Entries are looked up in the specified order
# All paths must end with "/"

# A path to static files should be specified with "->"
/                -> /Users/hirai/MighttpdTrial/

あと、sample.conf のDebug_Mode は最初から Yes でした。

どりゃ。

$ mighty trial.conf trial.route
bind: permission denied (Permission denied)

$

……昨日といっしょ。

では、sudo つけて実行してみましょうかー。

$ sudo mighty trial.conf trial.route
Password:

……お? プロンプトが返って来ないですね。なんか動いてるっぽい? ので、ブラウザで http://localhost/ にアクセスしてみると、

Not Found

とだけのそっけない表示。おぉ、動いてるっぽい。ターミナルのほうは、

127.0.0.1 - - [11/Aug/2011:23:47:03 +0900] "GET / HTTP/1.1" 404 11 "" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1"
127.0.0.1 - - [11/Aug/2011:23:47:03 +0900] "GET /favicon.ico HTTP/1.1" 404 11 "" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1"

こんなかんじ。動いたようですねー。

じゃ、こんなファイルを置いてみましょうか。

<html>
<body>
<h1>Hello, Mighttpd!</h1>
</body>
</html>

おけおけ。今日はここまでにしましょう。

次は CGI、……かなぁ? あー、そのまえに root 権限なしで動かしたいかなぁ。