バーチャルホスト

MAMPでバーチャルホストの設定をして、SSIを有効にする。

自分用メモ
ほとんどXAMPPと同じぽい。

使うアプリ(2個+1)

MAMP / apacheとMySQLにPHPを簡単インストール

MAMP: Mac, Apache, MySQL, PHP

hoster / hostsの設定が楽チンになるアプリ

RedWinder::MacApp::Hoster

エディター / CotEditor使った

CotEditor プロジェクト日本語トップページ – SourceForge.JP

手順(うろ覚えだけど)

1)MAMPの変更

MAMP PROは使わないからアンインストールした
アプリケーション フォルダのMAMP PROの中にあるUninstaller.appで
全部チェックした。

MAMPのポートを:8888から:80に変更した
[image]環境設定 - ポート

2)httpd.confの書き換え

httpd.confをCotEditorで開けるように、cmd+iから変更
[image]httpd.confを開くアプリを変更

httpd.confの場所は
[text]/Applications/MAMP/conf/apache/httpd.conf[/text]

次の行を検索して
[text]#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml[/text]

#(コメントアウト)を削除して .htmlを追加
[text]AddType text/html .shtml .html
AddOutputFilter INCLUDES .shtml .html[/text]

次に、
[text]Options Indexes FollowSymLinks[/text]で検索して

[text]<Directory />
Options Indexes FollowSymLinks
AllowOverride None
</Directory>[/text]
に”ExecCGI Includes”(CGIとSSIの使用を許可)を追加

こんな感じになる。
[text]<Directory />
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride None
</Directory>[/text]

もいっちょ、バーチャルホストを使うので
[text]Virtual hosts[/text]で検索して
コメントアウトを削除
[text]# Virtual hosts
#Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf[/text]

[text]# Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf[/text]

3)httpd-vhosts.confの編集

[text]/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf[/text]

winのxamppだとNameVirtualHost *:80がコメントアウトされてたけど
MAMPはされてなかった。

一番下に追加
DocumentRootにフォルダの場所
ServerNameに任意のアドレス
[text]<VirtualHost *:80>
DocumentRoot "/Users/[ユーザー名]/_webroot/example"
ServerName _example.localhost
<Directory "/Users/[ユーザー名]/_webroot/example">
order deny,allow
allow from all
</Directory>
</VirtualHost>[/text]

4)hosterを起動

ホスト名に「_example.localhost
IPに「127.0.0.1」を追加

こんなの追加されたらおk
[text]127.0.0.1 _example.localhost[/text]

以上MAMPを再起動して動作チェック

バーチャルホストを増やす時は
3)と4)をそれぞれ編集。

以上で漏れはないかな?

[追記 / 20120918]
その他参考
MAMPを使ってローカルで複数サイトのバーチャルホストを設定&イントラ環境や仮想環境からもそのサイトを確認する設定方法 | THE HAM MEDIA BLOG
MAMPのPHPでの文字化けを直す | memocarilog

ルートパスとDreamweaverとバーチャルホスト(バーチャルドメイン?)

突然、ルートパス(サイトルート相対パスと呼ぶの?)で書かれたサイトを触る事になって困ったので調べたメモ。

そもそもルートパス(サイトルート相対パス?)ってなんぞ?

ルートパス
サイトルートのルートディレクトリからみた相対パス
/から始まる。
絶対パス
外部サイトへリンク貼るときなんかのパス
httpから始まる
相対パス
ファイルから見た対象ファイルへのパス
よく使う

ルートパスで書かれたサイトをローカルでプレビューするには

Dreamweaverだと

[text gutter=”false”][編集] – [環境設定] – [ブラウザでプレビュー] – [オプション]一時ファイルを使ってプレビューにチェック[/text]
しておけば相対リンクがドキュメントでもプレビュー出来る(プレビューは)。

編集する設定はadobeのサイトAdobe Dreamweaver CS4 * 新規リンクの相対パスの設定
を参照 / ヘルプの引用

[image]一時ファイルを使用してプレビュー

[image]サイト管理のとこ

メリット(だと思うところ)
これだとローカルにサーバーを立てる必要もない。

デメリット(だと思うところ)
IETesterでIE6の表示を確認する時たいへんなのと
編集修正するたびブラウザの更新で確認できない。

XAMPPだと

バーチャルホストを使うのが現実的みたい。

編集するファイルは2つ
1つめ
C:\xampp\apache\conf\extra\httpd-vhosts.conf

(うちのPCでの設定ファイルの場所)

1-1)
[text]NameVirtualHost *:80[text]のコメントアウト(##)を削除して有効化する。

1-2)
例 / dドライブのsiterootフォルダをドキュメントルートにして
http://sitenameでアクセス出来るようにするには。

[text]<VirtualHost *:80>
DocumentRoot "D:/siteroot"
ServerName sitename
<Directory "D:/siteroot">
order deny,allow
allow from all
</Directory>
</VirtualHost>
[/text]
(ちょっと修正した)
Access forbidden!Error 403になっちゃうならDirectoryの指定は必要
<Directory>は<VirtualHost>の中でも外でも問題なにのだろうか?
DocumentRootのパスに2バイト文字が混ざってると上手くいかない感じ。

Directoryの中に記述できるモノもようわからん。
ここらへん?
http://httpd.apache.org/docs/2.2/ja/mod/core.html#directory
http://httpd.apache.org/docs/2.2/ja/mod/core.html#options
http://httpd.apache.org/docs/2.2/ja/mod/core.html#allowoverride

2つめ
C:\WINDOWS\system32\drivers\etc\hosts

例 / さっきのServerNameに記述した名前(sitename)を追加
[text]127.0.0.1 localhost sitename[/text]とか
[text]127.0.0.1 localhost
127.0.0.1 sitename[/text]みたいな感じで

Apacheを再起動してhttp://sitenameにアクセスしてみる。
いままでこれ知らなかったから
phpのテストをしたい場合
xamppのhtdocs以下にフォルダ作ってて
不便だと思ってたけど、他のサイトと同じように管理出来るのかしら。
ん~2バイト文字のフォルダ名が付いてるとエラーがでるのぅ。
もうちょい試してみよう。

参考にしたサイト

続きを読む