Apache を自動で起動させるようにする
Yosemiteにははじめからインストールされていますが、これを自動的に起動させるために、ターミナルで以下のコマンドを入力します。
手動で(再)起動させる時は、以下のコマンドを入力します。
このコマンドは、各種ファイルを編集した際にApacheに反映されているかを確認するためによく使います。
Apacheが起動しているかどうかチェック
http://localhost/ にアクセスして、「It works!」が出ればOK。
httpd.conf編集
Apacheの起動が確認できたら、次はhttpd.confを編集します。
ここでPHPやバーチャルホスト等を使うための設定をして行きます。
##ファイルの場所
/etc/apache2/httpd.conf
変更箇所
103、160、166、168、169行目のコメントアウトを外す
#LoadModule include_module libexec/apache2/mod_include.so
#LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
#LoadModule userdir_module libexec/apache2/mod_userdir.so
#LoadModule rewrite_module libexec/apache2/mod_rewrite.so
#LoadModule php5_module libexec/apache2/libphp5.so
↓
LoadModule include_module libexec/apache2/mod_include.so
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
LoadModule php5_module libexec/apache2/libphp5.so
221、222行目 Directoryの内容を編集
AllowOverride none
Require all denied
↓
AllowOverride all
Require all granted
250行目、OptionsにIndexes、Includesを追加
Options FollowSymLinks Multiviews
↓
Options FollowSymLinks Multiviews Indexes Includes
430、431行目 コメントアウトを外してSSIを有効に、さらに.htmlも有効にする
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
↓
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml .html
493、499行目のコメントアウトを外す
#Include /private/etc/apache2/extra/httpd-userdir.conf
#Include /private/etc/apache2/extra/httpd-vhosts.conf
↓
Include /private/etc/apache2/extra/httpd-userdir.conf
Include /private/etc/apache2/extra/httpd-vhosts.conf
httpd-userdir.conf 編集
ファイルの場所
/etc/apache2/extra/httpd-userdir.conf
変更箇所
16行目 コメントアウトを外す
#Include /private/etc/apache2/users/*.conf
↓
Include /private/etc/apache2/users/*.conf
#ユーザーのホームにSitesフォルダを作成する
ユーザーのホームにSites(サイト)フォルダがない場合、以下のコマンドを入力します。
$ mkdir ~/Sites
#{username}.conf 作成・編集
作成する場所
/etc/apache2/users/{username}.conf
{username}.conf 作成
以下のコマンドを入力して、{username}.conf を作成します。
$ sudo vim /etc/apache2/users/{username}.conf
{username}.conf 編集
以下のように書き込みます。
{username} 以外はコピペしても良いかと思います。
<Directory "/Users/{username}/Sites">
AddType text/html .shtml .html
AddHandler server-parsed .shtml .html
Options Indexes MultiViews FollowSymlinks Includes
AllowOverride all
Require all granted
</Directory>
AddTypeとAddHandler、それとOptionsのIncludesはSSIを使うための記述なので、必要なければトルツメでも構いません。
httpd-vhosts.conf 編集
ファイルの場所
/etc/apache2/extra/httpd-vhosts.conf
編集内容
<VirtualHost *:80>
DocumentRoot "/Users/{username}/Sites/{yourdocs}"
ServerName {yourservername}
<Directory "/Users/{username}/Sites/{yourdocs}">
Require all granted
DirectoryIndex index.html
Options Includes
</Directory>
</VirtualHost>
# 最後に
Apacheを再起動して確認します。
$ sudo apachectl restart
各設定が反映させているか確認できればおしまい。