Fact of Life

音楽と食とビールが好きなWebエンジニアのブログ

Macでローカルサーバー(Apache)を立ち上げてみた(ドキュメントルートの設定も)

スポンサーリンク

MAMPなどで簡単にローカルサーバー構築とかできちゃうので用途なさそうだけど、やりたい人のために・・

Apacheを起動してみる

rootユーザーで起動してみます。

apachectl start

http://localhost/で「it works!」と表示されます。

ドキュメントルートの変更

デフォルト設定だと、閲覧できる中身は/Library/WebServer/Documents/ccdとなり、rootユーザーでないとファイルを更新できないので何かと不都合です。
ということで、ドキュメントルートを変更し、ログインユーザーが変更できるように設定してみます。

※各confファイルの編集はrootユーザーで行います

1. httpd.confの編集

/private/etc/apache2/httpd.confの以下の行のコメントアウトを外します。

#LoadModule userdir_module libexec/apache2/mod_userdir.so

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

2. httpd-userdir.confの編集

/private/etc/apache2/extra/httpd-userdir.confの以下の行のコメントアウトを外します。

#Include /private/etc/apache2/users/*.conf

3. username.confの編集

/private/etc/apache2/users/username.conf

に以下の設定を書きます。

<Directory "/Users/ユーザー名/Sites/">
    Options Indexes MultiViews
    AllowOverride All
    Require all granted
</Directory>

confファイルの設定が終わったら、/Users/ユーザー名/Sitesというディレクトリを作成し、直下にHTMLファイル(index.html)を置き、apacheの再起動を行ってください。

apachectl restart

http://localhost/~ユーザー名/で閲覧可能になります。

PHPの環境を整えてみる

ついでにPHP開発のための環境も整えちゃいましょう。

PHPを有効にする

/private/etc/apache2/httpd.confの以下の行のコメントアウトを外します。

#LoadModule php5_module libexec/apache2/libphp5.so

confファイルの設定が終わったら、/Users/ユーザー名Sites//にPHPファイル(index.php)を作成します。
とりあえず下記1行を書いて試してください。

<?php phpinfo(); ?>

作成したらapacheを再起動して完了です。

拡張子が.htmlでもPHPが動くようにする

/private/etc/apache2/httpd.conf の以下の箇所に1行追加してください。

<IfModule mime_module>
...
...
     AddType application/x-httpd-php .html .htm .php ← 追加文字列
</IfModule>

追加後、先ほどのindex.phpindex.htmlに変更し、apacheを再起動してください。拡張子が.htmlでも表示されます。