人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

mod_rewriteのルールについて質問です。

現在、
RewriteRule ^([0-9A-Za-z]+)/([0-9A-Za-z)]+)\.html$ a.cgi?a=$1&b=$2 [L]
という設定を行っており、http://example.com/$1/$2.html でアクセス出来ております。

RewriteRuleを変更して http://$1.example.com/$2/ でアクセス出来るようにするには、どういう風にすればいいのでしょうか?

非常に近いものが下記にありました。
http://www.kawaz.jp/pukiwiki/?mod_rewrite

user.example.com で example.com/~user/ にアクセスさせる。

RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteCond %{HTTP_HOST} ^([a-zA-Z0-9_-]+)\.example\.com$
RewriteRule ^/(.*)$ /~%1/$1 [PT]

これを参考に試しましたが分かりませんでした。
宜しくお願いします。

●質問者: haring
●カテゴリ:インターネット ウェブ制作
✍キーワード:CGI example.com HTML http:// M$
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kn1967
●35ポイント

$1 に入る値が x1 あるいは x2 だと仮定しますと

http://x1.example.com/

http://x2.example.com/

という2つのサブドメインが実在している必要性があります。

(質問中にお示しのサイトに書かれている方法もサブドメインが実在する場合のものです。RewriteRuleだけでは出来ないのです)


お使いのサーバーにてサブドメインの設定が出来るのかどうかは判りかねますので

(1)サーバー管理者に問い合わせていただくか

(2)レンタルサーバーであればホームページ上のFAQなどを参照していただくか

(3)レンタルサーバー会社名と契約コースを私への返答に含んでいただいて知っている人からの回答を待つか

といった所でしょうか。


2 ● b-wind
●35ポイント
RewriteRule ^([0-9A-Za-z]+)/([0-9A-Za-z)]+)\.html$ http://$1.example.com/$2/ [L,R]

ルールそのものはこれでいいと思う。


ただ、1番の回答にもあるようにDNSやサーバーの設定はベット必要。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ