YosemiteのApacheでユーザーディレクトリを見ると403になる

いろんなサイトを見て回ってやっと解消できたのでメモ。

やりたいことは、http://localhost/~username/index.htmlとかが見れることです。
http://localhost/It works!なのに403がでていました。
  1. モジュールの有効化
    /etc/apache2/httpd.confを編集して、コメントアウトされている以下のモジュール有効化する。
    LoadModule authz_core_module libexec/apache2/mod_authz_core.so
    LoadModule authz_host_module libexec/apache2/mod_authz_host.so
    LoadModule userdir_module libexec/apache2/mod_userdir.so
    
  2. ユーザーディレクトリ用の設定ファイルを読み込む設定を有効化
    /etc/apache2/httpd.confを編集して、コメントアウトされている以下を有効化する。
    Include /private/etc/apache2/extra/httpd-userdir.conf
    さらに、/etc/apache2/extra/httpd-userdir.confを編集してコメントアウトされている以下を有効化する。
    Include /private/etc/apache2/users/*.conf
  3. ユーザーディレクトリの作成
    ホームディレクトリにSitesディレクトリを作成します。ここにファイルを設置します。
    mkdir ~/Sites
  4. ユーザごとの設定ファイルを作成
    /etc/apache2/users/username.confを以下の内容で作成する。
     <Directory>
    AllowOverride All
    Options Indexes MultiViews
    Options +FollowSymLinks
    Require all granted
    </Directory>
  5. Apacheを再起動
    sudo apachectl restart

コメント