YosemiteにしたらApacheもバージョンアップしてた件

2014年10月19日
長らく更新をサボっていたが(1年以上何も書いてなかった・・・orz)、App Storeでアップデートを確認したら、OS X 10.9が公開されていて、無料アップデートできるようになっていた。ということで、早速 Yosemiteにアップデートした。

画面のインタフェースが多少変わった事以外、特に違和感なし。
iOS 8と同じで、通知センターにウィジェットが追加できるようになっていたのがちょっとうれしい。

Air DropでiPhoneで撮った写真をMacに送れるのも便利。
MacからiPhone経由で通話できるのも便利。

今までと、それほど大きな変更なしに、地味な機能拡張をしてくれたのはありがたい。

が、Coda2を動かしたら、サイトが表示されない!
あ〜。またか・・・この前の時もそうだったな、と思いさっそく復旧作業。
Apacheが起動してないだけか・・・ということで、ターミナルから
$ sudo apachectl start

してみたが・・・ユーザのSitesディレクトリが表示されない・・・
httpd.confか・・・

ということで修正することに。PHPもうちのサイトは使ってるから両方ね。
ロードモジュールの所とユーザディレクトリ設定ファイルの読込みディレクトリのコメントアウトを外した。
$ cd /private/etc/apache2
$ sudo vi httpd.conf

(中略)

# Dynamic Shared Object (DSO) Support
LoadModule userdir_module libexec/apache2/mod_userdir.so
LoadModule php5_module libexec/apache2/libphp5.so

(中略)

# User home directories
Include /private/etc/apache2/extra/httpd-userdir.conf

で、再起動してみる。
$ sudo apachectl start

・・・なにっ! 403 Forbidden だとっ!
ディレクトリのパーミッション設定か・・・ということで lsで確認。
実行権限がついていないとダメだからね・・・

・・・
おかしいな・・・パーミッション設定も合ってる。
httpd-userdir.confの中身が間違っているのかな・・・?
$ cd /private/etc/apache2/users
$ cat test.conf	(ユーザ名.conf)
<Directory "/Users/test/Sites/">
	Options Indexes MultiViews
	AllowOverride None
	Allow from all
	Order allow,deny
</Directory>

合ってるよなぁ・・・
何が違うんだ・・・・。ということでhttpd.confの方をもう一度あたまから読んでみた。
すると・・・
<Directory />
    AllowOverride None
    Require all denied
</Directory>

と書かれている・・・。Requireだと!?
もしや・・・と思って、即確認。
$ apachectl -v
Server version: Apache/2.4.9 (Unix)
Server built:   Sep  9 2014 14:48:20

これだぁぁ。
2.2系と2.4系でアクセス許可の書き方が変わったことをすっかり失念していた。

http://httpd.apache.org/docs/2.4/upgrading.html

のページにしっかりと「Access control」として「In this example」が書かれている。

ということで、さっそく修正。
$ sudo vi test.conf
<Directory "/Users/test/Sites/">
	Options Indexes MultiViews
	AllowOverride None
	Require all granted
</Directory>

$ sudo apachectl restart

めでたく表示されました。これで元通り。よかったよかった。

Home

└▷Technical Reports


Keyword

 [Webサービス]   [Java]   [Windows]   [Macintosh]   [Exif]   [Bash]   [シェル]   [コマンドライン]   [Programming]   [Web制作]   [Unicode]   [パソコン]   [雑記]   [サーバ構築]   [PHP]   [ZenCoding]   [Gmail]   [Aptana]   [Objective-C]   [Linux]   [Postfix]   [RTE]   [CKEditor]   [KCFinder]   [JavaScript]   [SyntaxHighlighter]   [OmniGraffele]   [Oracle]   [Ubuntu]   [Growl]   [HDMI]   [セキュリティ]   [AppleScript]   [Automator]   [webalizer]   [CuBox]   [Apache]   [クロスコンパイル]   [DLNA]   [PS3]   [ITパスポート]   [MySQL]   [文字コード]   [utf-8]