YosemiteにしたらMAMP proでapacheが起動しなくなった件

YosemiteにしたらMAMP proでapacheが起動しなくなった件

ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。

久しぶりにMAMP proを立ち上げるとapacheの起動でエラーとなって困ってしまいました。原因はYosemiteへのアップグレードにあるようです。

MAMPのログを覗いてみると

MAMPのログを見てもそれらしいものは以下だけ・・・。
[sh] [notice] Digest: generating secret for digest authentication … ← 認証して
[notice] Digest: done ← 認証して
[notice] Apache/2.0.63 (Unix) PHP/5.3.2 DAV/2 configured — resuming normal operations ← 準備して
[notice] caught SIGTERM, shutting down ← シャットダウン。
[/sh]

ん?
[notice] caught SIGTERM, shutting down ← シャットダウン。ヾ(・ω´・)マテマテ

今さらではあるんですけど色々情報はありますよね。
ここら辺のキーワードで、検索すればわらわらできてます。

MAMP apache エラー
Yosemite MAMP apache

解決策

YosemiteでMAMPのApacheが起動しないことへの対応

/Applications/MAMP/Library/binのenvvarsを_envvarsにリネームする。

手順

ターミナルを立ち上げる
[sh]  # cd /Applications/MAMP/Library/bin/
 # mv envvars _envvars
[/sh] MAMP proのGUIからapacheを再起動

というわけで、おしまい!!!!

・・・

で、で、で、解決はしたんですけどぉぉぉぉぉ~。

なんか気持ち悪いじゃないですか~。

envvarsっていったい何者なんですか?

apacheの起動を止めてしまうほどの実力者なんですか?
なんで_(アンダーバー)なんですかね?
_(アンダーバー)って、apacheを生き返らすほどの実力者なんですかね?
気になって夜も眠れません。

というか

私、気になります。(`・ω・´)キリッ

早速、調べてみました。

まずは、事前情報の収集から

envvarsファイルとは、起動時オプションなどの環境変数を追加設定するファイルです。

ふーん。もっと詳しく!

envvarsファイルとは、apachectlコマンドを色々実行する前に読み込んで処理をしてくれている。
【参考】Apache/PHP で環境変数を指定するには

ふむふむ

事前調査はこれぐらいにして、Yosemiteで、エラーになった理由の原因究明へ。

他にエラーとなっている痕跡が本当にないのか確認で、とりあえず、直接apacheを起動してみた。
[sh] dyld: Symbol not found: __cg_jpeg_resync_to_restart
Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
Expected in: /Applications/MAMP/Library/lib/libJPEG.dylib
in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
/Applications/MAMP/Library/bin/apachectl: line 80: 15566 Trace/BPT trap: 5 $HTTPD -t
[/sh]

エラーが出てます。いきなりあったよ。(;・∀・)

次はMAMP proのenvvarsを見てみると、こんな感じ↓
[sh] if test “x$DYLD_LIBRARY_PATH” != “x” ; then
DYLD_LIBRARY_PATH=”/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH”
else
DYLD_LIBRARY_PATH=”/Applications/MAMP/Library/lib”
fi
export DYLD_LIBRARY_PATH
[/sh]

どうやら、共有ライブラリの検索パス(DYLD_LIBRARY_PATH)にMAMP pro内のディレクトリを追加している模様。ここら辺は、先ほどの事前準備で予習済み

で、その先は、こんな感じ↓
多いのでスクショで

image01

で、先ほどのapacheのエラーから、libjpeg.dylibでエラーが出ている。
ただ、libjpeg.dylibはシンボリックリンクなので

libjpeg.dylib -> libjpeg.8.dylib

こいつが犯人↓
libjpeg.8.dylib

こいつの読み込みでエラーになり、シャットダウン。解決!

まとめ?感想?

この先のなんでこいつでエラーになってたのかは、めんどいので省きます。

というわけで、今回の件のネットで広がっている回答のほとんどは、envvarsファイルの呼び出しでエラーとなっていた。
だったら、削除しちゃえばいい。(いや、いいのか?)

でも、なんとなく元のファイルがなくなっちゃうのは、不安だから_(アンダーバー)つけてリネームしておこう。

こんな感じですね。

これでぐっすり眠れます。(。-ω-)zzz. . . (。゚ω゚) ハッ!
それよりも、Yosemiteにアップデート以降、MAMP Pro を開いていなかった事実の方が・・・orz

ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。

【週刊bitWave】(メルマガ)始めました!

登録はこちらからメールアドレスを入力してお申込みください。

ご登録いただいたメールアドレスは 【週刊bitWave】の更新情報の配信にのみ使用します。

個人情報の取扱いに関しては、「プライバシーポリシー」をご確認ください。解除はいつでもこちらから行うことが可能です。

あなたにおすすめ