OS-Xでは、もう当たり前だとは思うがApache2が採用されていて若干ディレクトリ構造が異なる。ここに覚え書きを書いておく。
以前は、httpd.confファイルで全ての設定が記述されていたが、いくつか別の設定ファイルをincludeして読み込まれるような構造に変わっている。
通常設定だと、.htaccessファイルを作っても反映されない。httpd.confの中に下記記述がある。
<Directory /> Options FollowsimLinks AllowOverride none Order deny,allow Deny from all </Directory> これを Options All AllowOverride All
とする。ただし、ここで設定されるのは、DocumentRootの設定、すなわち、http://localhost/ でアクセスされる場所のみ。各Userディレクトリは別の設定になっている。
各Userの ~hoge/ などでアクセスできる場所の設定は別にある。httpd.confに下記記述がある。
# User home directories Include /private/etc/apache2/extra/httpd-userdir.conf このファイルの中に、設定があり中身は、、 UserDir Sites Include /private/etc/apache2/users/*.conf
と記述され、各User設定が別のファイルになっている。そのファイルにも、.htaccessが禁止されているのでこれを有効にする。下記。
<Directory "/Users/hoge/Sites/"> Options All AllowOverride All Order allow,deny Allow from all </Directory> php_flag display_errors Off