1. Qiita
  2. 投稿
  3. Apache

yosemiteでapacheのvhost設定をする(ついでにRubyも動くようにしとく)

  • 13
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

ほぼクリーンなyosemiteで、apacheを立ち上げてvhostも設定した時に最初にしたこと。

まずは設定ファイルの場所

apache設定ファイル

/private/etc/apache2/httpd.conf

vhost用のインクルード設定ファイル

/private/etc/apache2/extra/httpd-vhosts.conf

hostファイル

/private/etc/hosts

やったこと

vhosts.confを読み込み

httpd.conf499行目付近の

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

のコメントを外す

vhostsの設定ファイルを編集

httpd-vhosts.confを編集する。最低限以下のような感じ?

# domainnameと/path/to/your/docs/は各自環境で読み替え

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot "/path/to/your/docs/"
    ServerName domainnameA
    <Directory "/path/to/your/docs/">
        Require all granted
        DirectoryIndex index.html
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/path/to/your/another/docs/"
    ServerName domainnameB
    <Directory "/path/to/your/another/docs/">
        Require all granted
        DirectoryIndex index.html
    </Directory>
</VirtualHost>

ここ参考にさせていただきました。
http://blog.77jp.net/authz_coreerror-apache-2-4-error
http://www.adminweb.jp/apache/virtual/index2.html

hostsを編集

127.0.0.1 localhost
# 以下を追記。domainnameは各自環境で読み替え
127.0.0.1 domainnameA
127.0.0.1 domainnameB

で、apache再起動

sudo apachectl restart

Ruby動かす

モジュールの読み込み

httpd.conf157行目付近の

#Loadmodule cgi_module libexec/apache2/mod_cgi.so

のコメントを外す

vhosts.confに以下を追記

    <Directory "/path/to/your/docs/">
        Require all granted
        #以下追記
        DirectoryIndex index.html index.rb
        Options +ExecCGI
        AddHandler cgi-script .rb
    </Directory>

同じくapache再起動は忘れずに。


すべて、「とりあえず動かす」レベルなので、必要な設定はそれぞれあとから追記すれば良いかなと。