- 更新日: 2015年4月27日
- Mac & PC
YosemiteでApacheが起動しないエラー
本日ようやく Macbook Air を Yosemite(version 10.10.3)にアップグレードしたのですが、いくつか問題に遭遇しました。
最初にぶち当たったのが、homebrew で入れていた、ローカル環境での開発用の apache(httpd)が起動しないトラブル。X11(XQuartz)が入ってなかったのと、Apache の起動に必要な run ディレクトリがなくなっていて httpd.pid が作成できないのが原因でした。
— 環境 —
Mac OS X Yosemite 10.10.3
Apache 2.2.22
X11(XQuartz)がないエラー
apache を起動させようとすると、まず以下のように X11 がないよ!というエラーが表示されました。
1 2 3 4 |
$ sudo apachectl start $ 2015-04-26 16:29:54.160 X11[5688:23697] Failed to connect (primary_text_field_cell) outlet from (AppDelegate) to (NSTextFieldCell): missing setter or instance variable |
以下のダイアログボックスも表示された。
ダイアログボックスの「Continue」をクリックすると、About X11 and OS X – Apple Support のページが表示されます。私は Mac の言語設定を英語にしているので、日本語設定の場合は日本語でダイアログボックスやページが表示されるかもしれない。
X11 は OS X に含まれていないので、別途 XQuartz プロジェクトのサイトからダウンロードする必要があるとのこと。案内に従って、XQuartz から XQuartz-*.*.*.dmg をダウンロードしてインストールしました。
再び apache 起動を試したところ、X11 のエラーは消えたのですが…
1 2 3 |
$ sudo apachectl start |
またも起動できず… エラーメッセージは消えたのですが、ps コマンドで調べると httpd が起動していなかった。
1 2 3 |
$ ps aux | grep httpd |
httpd.pid が作成される run ディレクトリを手動で作成して解決
ということで、Apache のエラーログを調査しました。
1 2 3 4 5 6 7 8 9 |
$ sudo tail -f /path/to/error_log ... [Sun Apr 26 16:36:30 2015] [error] (2)No such file or directory: Couldn't bind unix domain socket /usr/local/Cellar/httpd/2.2.22/var/apache2/run/cgisock.2404 ... [Sun Apr 26 16:36:30 2015] [error] (2)No such file or directory: could not create /usr/local/Cellar/httpd/2.2.22/var/apache2/run/httpd.pid ... [Sun Apr 26 16:36:30 2015] [error] httpd: could not log pid to file /usr/local/Cellar/httpd/2.2.22/var/apache2/run/httpd.pid |
上記のように apache の run ディレクトリ以下に、必要なファイルを作成できずにエラーになっていることが分かった。なので、run ディレクトリが存在するか確認した後、存在しなかったので手動で run ディレクトリを手動で作成しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
$ cd /usr/local/Cellar/httpd/2.2.22/var/apache2/ $ ls -la total 0 drwxr-xr-x 3 username admin 102 4 25 22:33 . drwxr-xr-x 3 username admin 102 4 25 22:33 .. drwxr-xr-x 4 username admin 136 4 25 22:33 log $ mkdir run $ ls -la total 0 drwxr-xr-x 4 username admin 136 4 26 16:41 . drwxr-xr-x 3 username admin 102 4 25 22:33 .. drwxr-xr-x 4 username admin 136 4 25 22:33 log drwxr-xr-x 2 username admin 68 4 26 16:41 run |
その後、再び apache を起動して、httpd プロセスを確認。
1 2 3 4 5 |
$ sudo apachectl start Password: $ ps aux | grep httpd |
今度は上手く起動してローカルで apache が立ち上がり、ブラウザでも正常にページが表示されました。以上で、Yosemite アップグレードにより Apache が起動しなかったトラブルに対する対策は終了です。
Yosemite は色々と落とし穴がありそうな噂を聞いていたので、かなりびびりながらアップデート作業を行ったのですが、今の所たいした問題は発生していません。一番の懸案だった Rails アプリケーションの開発も、私の環境では問題なさそうです。今回の記事に書いた Apache 起動の不具合等いくつか問題には遭遇しましたが、どれも小さな問題で解決は比較的簡単だったので助かりました。
- Mac & PC の関連記事
- マークダウンのHTML表示確認にChrome拡張Markdown Preview Plusが便利
- cdtoでMac El CapitanのFinderからiTerm2/ターミナルを起動
- Mac OSをEl Capitanにアップデート/インストール
- Macでスクリーンショット動画をキャプチャする手順
- MacでWord/Excelファイルを作成・編集するにはOffice Onlineが便利
- Macでトラックパッドとマウスのスクロール方向を逆に設定
- Mac Chromeにマウスジェスチャー拡張 smartUp Gestures を入れた
- Xcodeの操作が辛いので635円の無線マウスを買った
- エンジニアでもできる洒落たロゴを短時間で作成するコツ4つ
- Mac・YosemiteでDisplayLinkドライバを更新
- 初回公開日: 2015年4月26日
Leave Your Message!