重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

現在、『さくらVPS』に契約をして、
『/home』下に『/hoge』というユーザーを作成し、
『/ドメインA』ディレクトリ内の『/public_html』にドメインAを割り当てたんですが、
『http://ドメインA/』でも、割り当てたIPアドレスでもアクセスできている状況です。
(各種ディレクトリ名、ドメイン名は適当です。)

 /home
  └ /hoge
    └ /ドメインA
      └ /public_html

ドメインは『Value-Domain』で取得し、
設定フィールドに次のような記述をしています。(下記のIPアドレスは適当です。)
さくらVPSでは、IPを1つもらえているので、そのIPを書いています。

 a * 123.123.123.123
 mx @ 10
 txt @ v=spf1 ip4:123.123.123.123 ~all

今後、『/hoge』ディレクトリ内に、
以下のように別ドメインをどんどん追加していく予定です。

 /home
  └ /hoge
    ├ /ドメインA
      └ /public_html
    ├ /ドメインB
      └ /public_html
    ├ /ドメインC
      └ /public_html
    ├ /ドメインD
      └ /public_html
    ├ /ドメインE
      └ /public_html
    └ /ドメインF
      └ /public_html

先ほど書いた "『http://ドメインA/』でも、割り当てたIPアドレスでもアクセスできている状況" についてですが、
『http://ドメインA/』でアクセスできるのは何も気持ち悪いことはないのですが、
IPアドレスをブラウザのアドレスバーに打ち込んでアクセスしても、
『http://ドメインA/』と同じ内容で表示されているので、
『ドメインB』、『ドメインC』、『ドメインD』、…とドメインを増やし、
その都度、『Value-Domain』で下記のように割り当てた場合、

 a * 123.123.123.123
 mx @ 10
 txt @ v=spf1 ip4:123.123.123.123 ~all

IPアドレス直打ちの場合、どのドメインのサイトが表示されるのかなという疑問があります。

自分の中には、最終的に、ドメイン → IPアドレス というイメージがありますが、
ここで、出来れば、IPアドレスではなく、
ドメイン入力からのみのアクセスのみ許可にした方が気持ち的にはすっきりするのですが、
そういった方法はありますか?

長く読みづらくすみません…。

A 回答 (2件)

いずれにせよ、IPアドレスが1個しかないので名前ベースのバーチャルホストを書く必要があるのですが、IPアドレスを名前としたバーチャルホストを別に書いておけばよいです。



<VirtualHost *:80>
DocumentRoot /home/IPaddress/public_html
ServerName 192.168.1.1

こんな感じで

この回答への補足

EF_510さん、ありがとうございます。

教えていただいた手順でもって、

<VirtualHost *:80>
DocumentRoot /home/123.123.123.123/public_html
ServerName 192.168.1.1
</VirtualHost>

といった感じで記入し、Apacheを再起動したところ、

/etc/rc.d/init.d/httpd restart
httpd を停止中:   [ OK ]
httpd を起動中: Warning: DocumentRoot [/home/123.123.123.123/public_html] does not exist   [ OK ]

といったWarningが表示されました。

IPアドレスをブラウザのアドレスバーに打ち込んでアクセスしたところ、

 Not Found

 The requested URL / was not found on this server.

と表示され、
『http://ドメインA/』でアクセスしたところ、目的通り表示されました。


『/home/123.123.123.123/public_html』なんて無いですよ、といった警告文は無視して良いのでしょうか?

補足日時:2011/09/10 21:00
    • good
    • 0

目的を達成しているなら無視しても構いませんが、都合が悪ければ空のindex.htmlでも表示させておけば良いのではないでしょうか。

    • good
    • 0
この回答へのお礼

EF_510さん、ありがとうございます。

無事設定できました!

<VirtualHost *:80>
DocumentRoot /home/
ServerName 192.168.1.1
</VirtualHost>

とし、

 Forbidden

 You don't have permission to access / on this server.

と表示させるようにしました。

お礼日時:2011/09/10 23:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!