Macでlocalhost設定

More than 3 years have passed since last update.


Apache を自動で起動させるようにする

Yosemiteにははじめからインストールされていますが、これを自動的に起動させるために、ターミナルで以下のコマンドを入力します。

$ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist



手動で(再)起動させる時は、以下のコマンドを入力します。

$ sudo apachectl restart



このコマンドは、各種ファイルを編集した際に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

各設定が反映させているか確認できればおしまい。

http://locolhost/~{username}でアクセスできればOK