Apacheを再起動しようとしても、起動しない。。。
Apacheが起動しない原因は主に3つ。
####①ポート番号競合
####②モジュールエラー
####③設定ファイルの書き間違え
らしい。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10112045530
というわけで、しらみつぶしにいきます。
##①ポート番号の競合
WindowsではよくSkypeがポート80を占有してApacheが起動しないなんてことがあるらしいです。Macでの調べ方はターミナルで
$ lsof -i :80
を実行。(LISTEN)となっているプロセスがポートを読んでいます。
プロセスを削除するには、
$ open /Applications/Utilities/Activity\ Monitor.app
で、アクティビティモニターというアプリケーションを開きます。
指定したプロセスを終了するをクリックすれば、プロセスを終了できます。
あるいはコマンドラインから
$ kill プロセス番号
で終了可能です。
##②モジュールエラー
モジュールエラーを調べるためにはエラーログをみます。
$ vim /Applications/MAMP/logs/apache_error.log
を開いて、
[error]
となっている内容を参照してください。
##③設定ファイルの書き間違え
httpd.confや、その参照のconfファイルの構文に誤りが合る場合があります。
###①Syntaxエラー
コメントアウトがコメントアウトされてない
###②Includeの参照先に指定ファイルがない。
ファイル名の誤り。ディレクトリパスの誤り
が主な原因です。
MAMPのAcache構文チェック方法を調べたのですが、よくわからなかったので、
Macのデフォルトのapacheで強制的に調べます。笑
$ cd /etc/apache2/
$ sudo mkdir tmp
$ sudo mv httpd.conf /tmp
$ sudo cp /Applications/MAMP/conf/apache/httpd.conf
でデフォルトのhttpd.confを一旦避難させて、次にMAMPのhttpd.confを移動。
etcの編集はsudoで。
つぎに、apacheの構文をチェック。
$ apachectl configtest
Syntax error on line 120 of /Applications/MAMP/conf/apache/extra/httpd-ssl.conf
とかが出たらビンゴ。所定の箇所をチェックしましょう。