PDA

View Full Version : サブドメインの動的な作成


marudorado
2006/06/12, 12:49 AM
.htaccessでmod_rewriteを使って、
http://△△△.○○○.com/ へのアクセスを (DNS設定済み・ドメインウエブ未設定)
http://○○○.com/△△△/

に転送することは可能でしょうか?
もし、可能だとしたらどう設定すれば良いのでしょうか? :confused:

shimix
2006/06/12, 01:17 AM
ドメインウェブ未設定のままでは無理でしょうね。そのサブドメインでのアクセスを割り当てている領域がなければ.htaccessも設置できません。いったんドメインウェブを設定して、その領域に.htaccessを置いてmod_rewriteを使うのが正解だと思います。

どうせDNS設定はするのですから「動的に」というものでもないような気はします。もちろん.htaccessの内容を書き替えればrewrite内容の変更は可能ですが・・。

marudorado
2006/06/12, 01:36 AM
回答ありがとうございます。やはり無理でしょうか?

以下のような忍者ツールズの機能をなんとかPHPの使えるXREAで実現したいのですが :(

----------------------------------------------------------------
バーチャルホスト機能とは

http://(ホスト名).omosiro.o-oku.jp/〜 というURLは、自動的に「/ホスト名」というディレクトリの中に置いたページが表示されるようになります。ホスト名は半角小文字アルファベット・数字からなる任意の文字列です。予めFTPで同名のディレクトリを作成してください。

例)
http://www.omosiro.o-oku.jp/ というURLにアクセスすると、
index.html というファイルが表示されます。(存在する場合)
※デフォルトは黒子がいるページ

http://moemoe.omosiro.o-oku.jp/mangetsu/miyoko.html というURLは
/moemoe/mangetsu/miyoko.html というファイルを指します。

http://www2.omosiro.o-oku.jp/ でアクセスしても http://omosiro.o-oku.jp/www2/
でアクセスしても、/www2/index.html が表示されます。(存在する場合)

携帯での振分け例
http://www.shinobi.jp/hp/manual_01.html#04
----------------------------------------------------------------

他のレンタルサーバでも不可能なのでしょうか?

shimix
2006/06/12, 08:34 AM
「サブドメインを動的に生成」という意味がちょっとわかりませんでしたが、「予めFTPで同名のディレクトリを作成してください。 」というようなことであれば、ドメインウェブを設定して、そのディレクトリ(public_html/sub.example.com/)に.htaccessを置いてRewriteEngine on
RewriteCond %{HTTP_HOST} ^(sub\.example\.com)(:80)?
RewriteRule ^(.*) http://example.com/sub/$1 [R,L]と書けばいいのではないでしょうか?(もちろんexample.com/subはあらかじめ作成しないといけません)

#mod_rewriteのごく普通の使い方だと思います。

marudorado
2006/06/12, 10:51 AM
ドメインウェブを設定しなければならないとすると20個までしかサブドメインが作れません。

忍者ツールズの機能では、omosiro.o-oku.jpというドメインを取得して、subというディレクトリを作ると、http://sub.omosiro.o-oku.jp/~ へのアクセスでhttp://omosiro.o-oku.jp/sub/~の内容が表示されます。ディレクトリは容量内であれば無制限に作ることが出来るので、サブドメインも無制限に作れることになります。

やはりこれは、httpd.confの<VirtualHost>を書き換えないと出来ないのでしょうか?

こちらに、それらしき方法が書いてありました。
http://webcraft.jp/asy/linux/mod_rewrite.htm#005
---------------------------------------------------------------
例: http://lange.style.ne.jp のアクセスを http://www.style.ne.jp/in.php?no=lange にする。
   ( httpd.conf or .htaccess )
   バーチャルホストで定義する
   <VirtualHost xxx.xxx.xxx.xxx>
   ServerName style.ne.jp
   ServerAlias *.style.ne.jp
   ServerAdmin info@style.ne.jp
   RewriteEngine On
   RewriteCond %{HTTP_HOST} ([^\.]+).*
   RewriteRule ^/$ /in.php?no=%1 [R]
   </VirtualHost>
--------------------------------------------------------------

また、この方は.htacessの設定で実現したようなのですが(xreaでは無いと思いますが)
http://mm.apache.jp/pipermail/apache-users/2001-September/000498.html
--------------------------------------------------------------
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?tokyo\.hoge\.com
RewriteRule ^(.*)$ /tokyo/$1 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?nagoya\.hoge\.com
RewriteRule ^(.*)$ /nagoya/$1 [L]

例) http://www.nagoya.hoge.com/ → /nagoya/
例) http://www.hoge.com/nagoya/ → /nagoya/
---------------------------------------------------------------
.htaccessをどこに置いたかが良く分かりませんが。

SEOを考慮してパソコン、ディスプレイなどカテゴリごとにサブドメインでページを作りたいのですが。

shimix
2006/06/12, 12:44 PM
SEO的にサブドメインでないと・・というあたりは私にはわかりませんが(汗)ドメインウェブを設定しなければならないとすると20個までしかサブドメインが作れません。それが問題であれば、ちょっと難しいですね。ドメインウェブの設定でメタキャラクタは使えないですし、XREAではドメインウェブの設定をしなければ運用できないと思います。適当な外部サーバ(自宅とか)に向けておいて、そちらの.htaccessでRedirectするとか・・それなら最初からそっちのサーバを使いますかね(苦笑)。

(追記)
他のレンタルサーバでも不可能なのでしょうか?サブドメイン作成無制限というレンタルサーバもあります。RedirectやRewriteを使ってごにょごにょしなくてもサブドメインのURLで運用できます。お勧めはしませんが(汗)こちら (http://lolipop.jp/?mode=service&state=plan&state2=ori_domain)とか・・。他にもそれなりにあるとは思います。

#私などは1ドメインで数個しか使わないので。5ドメインくらいが1サーバに同居してたりとか(苦笑)。

marudorado
2006/06/12, 09:38 PM
回答ありがとうございます。
XREAでは不可能なようなので、ご指摘のサーバなど他のサーバを探してみます。ありがとうございました。 :)

ネタの大帝
2006/06/14, 01:47 PM
>>shimix殿
たしか、サブドメイン形式は完全な別コンテンツとして
サブディレクトリは同じコンテンツとして見られる等等じゃなかろうか

スーパーでたとえると、果物コーナーがある。
サブドメインの場合は、わざわざ一店舗果物専門のスーパーを作るような
もんだ。
サブディレクトリは普通のスーパーと同じように果物コーナー
なイメージじゃなかろうか。

shimix
2006/06/14, 02:58 PM
たしか、サブドメイン形式は完全な別コンテンツとして
サブディレクトリは同じコンテンツとして見られる等等じゃなかろうかクルマと釣りの趣味サイトをわけるとかならわかりますけどね。独立・無関連だし。あとBlogだけサブドメイン作ってというのも。でもパソコンとディスプレイでサブドメインをわけていたら・・あ、「商店街」にしようということかな(笑)。

#たしかに別コンテンツからの被リンクは多くなりそうだけど(違