Apacheのバーチャルホスト(Virtual Host)機能を使って、複数のサイトを管理します。
Windows 7 で、XAMPP(v1.8.2)を使用した開発環境を想定しています。
複数のプロジェクトで、Webサイトを開発する際に、
- フォルダごとに分けて使う方法
localhost/project1/
localhost/project2/ - httpd.confを置き換える方法
httpd.conf
ttpd.conf.project1
httpd.conf.project2
のどちらかを、やると思うのですが、
絶対パスで書けなかったり。
<script type="text/javascript" src="/js/jquery.js"></script>
別のことやってる最中に、前のサイト開きたくなった時、httpd.confを置き換えてApache再起動したり。
やってて、ちょっと面倒になったらバーチャルホスト使うといいかもです。
設定方法
xampp/apache/conf/httpd.conf をテキストエディタで開きます。
# Virtual hosts Include conf/extra/httpd-vhosts.conf
上記の様な記述があると思います。
外部ファイルのhttpd-vhosts.confにバーチャルホスト関連の設定が書いてあるよ~ってことです。
もし、先頭に#があってコメントアウトされていたら取ります。
次に、xampp/apache/conf/extra/httpd-vhosts.conf を開きます。
そしたら、下記のような項目があるので、
<VirtualHost *:80> ##ServerAdmin webmaster@dummy-host.example.com DocumentRoot "C:/xampp/htdocs/" ServerName localhost ##ServerAlias www.dummy-host.example.com ##ErrorLog "logs/dummy-host.example.com-error.log" ##CustomLog "logs/dummy-host.example.com-access.log" common </VirtualHost>
これをコピーして、すぐ下に張り付けて、次のように書き換えます。
<VirtualHost *:80> DocumentRoot "F:\Project\gomocool\htdocs" ServerName gomocool.dev <Directory "F:\Project\gomocool\htdocs"> Require all granted Order allow.deny Allow 127.0.0.1 </Directory> </VirtualHost>
こんな感じかな。
ちなみに、この設定では、開発マシンを想定しているので、自分のマシンからしかアクセスできません。
(ちなみに、CakePHPなどのURL Rewrite 機能をつかう場合は、AllowOverrideが必要かも?)
んで、XAMPP Control Panel から Apache再起動。
書き方が変でなければ無事起動する。
しかし、このままではつながらないので、hostsに追記する。
C:\Windows\System32\drivers\etc\hosts をメモ帳か何かで開く。
ちなみに、管理者権限のメモ帳などで開かないと上書きできない。
よくわからないなら、デスクトップにコピーして、ドラッグ・アンド・ドロップで上書き。
開いたら、一番最後の行に、先ほどのServerNameを追記する。
127.0.0.1 gomocool.dev
これで、ブラウザに gomocool.dev と書いてアクセスできる。
I used to be suggested this website by way of my cousin. I am now not sure whether this publish is written by way of him as nobody else understand such certain approximately my problem. You are incredible! Thanks!