Vagrant + VirtualBoxは既にインストール済みの前提で記載していきます。
まずは、Eclipseにgit cloneしてきます。
Vagrant + VirtualBoxをインストールしてない方はコチラを参考⇒Mac上に Vagrant + VirtualBox で環境構築
環境
OS/ミドルウェア | バージョン |
---|---|
CentOS | 6.4 |
Apache | 2.2.15 |
バージョンの確認方法
[CentOS]
1 |
$ cat /etc/redhat-release |
[実行結果]
1 |
CentOS release 6.4 (Final) |
[Apache]
1 |
$ httpd -v |
[実行結果]
1 2 |
Server version: Apache/2.2.15 (Unix) Server built: Aug 15 2017 19:44:58 |
Eclipseにgit clone
詳しくはコチラを参考⇒gitの使い方講座
フォルダの共有機能
Vagrantfileを実行したフォルダと仮想マシン内の「/vagrant」ディレクトリがリアルタイムで同期します。
私の場合以下のディレクトリ構成です。
/Users/ユーザ名/Vagrantfile
開発用のPC
/Users/ユーザ名
仮想マシン内
/vagrant
git cloneしてきたディレクトリ構成
/Users/ユーザ名/git/プロジェクト名
シンボリックリンクを貼る
[ディレクトリの移動]
1 |
$ cd /var/www/html |
[シンボリックリンク]
1 |
$ ln -s /vagrant/git/vagrant-project /var/www/html/ |
[実行結果]
1 |
lrwxr-xr-x 1 vagrant vagrant 28 10月 22 02:48 2017 vagrant-project -> /vagrant/git/vagrant-project |
バーチャルホストの設定
[ディレクトリの移動]
1 |
$ cd /etc/httpd/conf.d |
[ファイルの作成]
1 |
$ sudo touch vhost.conf |
[ファイルの編集]
1 |
$ sudo vi vhost.conf |
[ファイルの中身]
1 2 3 4 5 6 7 |
<VirtualHost *:80> ServerAdmin メールアドレス DocumentRoot /var/www/html/vagrant-project ServerName local-vagrant ErrorLog /var/log/httpd/local-vagrant-error_log CustomLog /var/log/httpd/local-vagrant-access_log common </VirtualHost> |
httpd.confの設定
ServerName example.jp:80
サーバーのホスト名とポート番号を指定します。サーバーのIPアドレスに対して、DNSのPTRレコード (逆引きレコード) で設定したホスト名を指定しておくと良いでしょう。このディレクティブが欠けていると、「正確なホスト名を決定できなかった」という旨のエラーが発生します。 example.jp
は例示用のホスト名なので、自分のサーバーのホスト名に置き換えてください。 このディレクティブは、後述する<VirtualHost> セクション内でも設定します。
[ディレクトリの移動]
1 |
$ cd /etc/httpd/conf |
[ファイルの編集]
1 |
$ sudo vi httpd.conf |
[ファイルの中身]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#ServerName www.example.com:80 // 追加 ServerName local-vagrant:80 #NameVirtualHost *:80 ↓コメントを外す NameVirtualHost *:80 <Directory /> Options FollowSymLinks // コメントアウト # AllowOverride None // 追加 AllowOverride ALL </Directory> |
※「NameVirtualHost *:80」のコメント外すのは、バーチャルホストを複数設定する時にエラーが出るからです。
※バーチャルホストを1つしか設定しない場合は、コメントアウトしたままでも大丈夫みたいです。
※このディレクティブを None
に設定すると、.htaccess ファイルは完全に 無視されます。
[「#NameVirtualHost *:80」の時のエラー内容]
1 2 3 |
Stopping httpd: [ OK ] Starting httpd: [Sun Oct 29 05:20:18 2017] [warn] _default_ VirtualHost overlap on port 80, the first has precedence [ OK ] |
詳しくはコチラ⇒Apache:[警告] _default_ VirtualHostがポート80で重複しています。
[「AllowOverride None」の時のエラー内容]
1 |
Apache/2.2.15 (CentOS) Server at local-vagrant Port 80 |
詳しくはコチラ⇒Apache HTTP サーバ バージョン 2.2
[Apacheの再起動]
1 |
$ sudo service httpd restart |
[実行結果]
1 2 |
Stopping httpd: [ OK ] Starting httpd: [ OK ] |
hostsの設定
[ファイルの編集]
1 |
$ sudo vi /etc/hosts |
[ファイルの中身]
1 |
☓☓☓.☓☓☓.☓☓.☓☓ local-vagrant |
設定するipは、Vagrantfileに記載してあるipを指定する。下記参考
config.vm.network “private_network”, ip: “☓☓☓.☓☓☓.☓☓.☓☓”
ブラウザで確認
1 |
http://local-vagrant/vagrant.html |
[表示画面]
設定したファイルが表示されたらOKです。
以上で一通りの設定が終了しました。
これでEclipseで編集して保存したら、ディレクトリがリアルタイムで同期しているのでブラウザで確認できます。
gitもvagrantに接続すればコマンドで、出来ますし、Eclipseでgitを使用することも出来ます。