サブドメインに対する.htaccessについて教えてください。
レンタルサーバーでサブドメインを設定しました。
設定したサブドメイン:http://sub.example.jp
サブドメインの公開フォルダをルートに指定しました。
そのためサブドメインにアクセスするとhttp://example.jpと同じ内容が表示されます。
これを、サブドメインにアクセスした時にサブドメインをパラメータに入れてURLはサブドメインのままでリライト?したいのですがうまくいきません。
やりたいことはhttp://sub.example.jpにアクセスすると
http://example.jp/data?mode=subにリライトしたいです。
以下の.htaccessをルート上にアップロードしました。
RewriteCond %{HTTP_HOST} ^(.*)¥.example¥.jp
RewriteRule ^([0-9a-zA-Z_\-]+)¥.$ /data?mode=$1 [L]
URLをサブドメインのままリライトするにはどうしたらいいのでしょうか?
どなかたご教授お願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>URLはサブドメインのままでリライト?したい
と、
>やりたいことはhttp://sub.example.jpにアクセスすると
>http://example.jp/data?mode=subにリライトしたいです。
がマッチしてないように思います。
サブドメインのままリライトしたいなら、
http://sub.example.jp/data?mode=sub
かと思いますが、要求はどちらなのでしょうか?
ご回答ありがとうございます。
説明がわかりにくくてすいません。
やりたいことは、
サブドメインのURL(http://sub.example.jp)にアクセスした時に
URLはそのままで(http://sub.example.jpのまま)で
http://example.jp/data?mode=subを表示させたいと思っています。
そしてサブドメイン(sub)はいくつかあるので、
正規表現を使い入力されたサブドメインの部分(sub)によって
http://example.jp/data?mode=サブドメイン(sub)の
サブドメイン部分(sub)を変えて表示したいのですがうまくいきません。
http://sub.example.jp → http://example.jp/data?mode=sub
http://apple.example.jp → http://example.jp/data?mode=apple
http://flower.example.jp → http://example.jp/data?mode=flower
アドレスは左のサブドメイン型のURLのまま、右のURLを表示させたいです。
一旦サブドメインをsubのみと仮定して
RewriteCond %{HTTP_HOST} ^sub\.example\.jp$
RewriteRule ^$ /data?mode=sub [L]
と記述した.htaccessをトップルートに置くと
URLのアドレスはhttp://sub.example.jpのままで、
http://example.jp/data?mode=subの内容を表示させることはできたのですが、
サブドメインが変わる場合の.htaccessの記述がわかりません。
RewriteCond %{HTTP_HOST} ^(.*)\.example\.jp$
RewriteRule ^(.*)$ /data?mode=sub [L]
としてもInternal Server Errorになってしまいうまくいきません。
サブドメインによって、そのサブドメインをmode=○○○(サブドメイン)にいれて表示させる方法を教えていただきたいと思っています。
よろしくお願い致します。
No.2
- 回答日時:
>RewriteCond %{HTTP_HOST} ^(.*)\.example\.jp$
>RewriteRule ^(.*)$ /data?mode=sub [L]
2行目を
RewriteRule ^$ /data?mode=$1 [L]
にするとどうなりますか?
mod_rewrite のデバッグレベルを一時的に上げてみると原因調べやすいかもしれません。
ご回答ありがとうございます。
補足に書いてしまいましたのでお礼に同じ内容を書かせていただきます。
パラメータのmodeはデータのIDを参照するものとなっているのですが、
2行目を
>RewriteRule ^$ /data?mode=$1 [L]
に変えると別のデータ(一番新しいデータ)が表示されてしまいます。
おそらく$1がサブドメイン部分を読み取れていないのだと思います。
$1の部分に実在するデータIDを入力した.htaccessを設置すると正常に表示されるので
ただしく読み込まれていないことが原因かもしれませんが、
やはり解決方法がわかりません。
何か考えられる原因はありますでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(IT・Webサービス) Wordpressわかる方教えてください。 2 2023/01/26 15:20
- その他(プログラミング・Web制作) .htaccessの設定で、httpはhttpsに、且つ、wwwありに統一、の記述方法 2 2023/06/22 10:54
- Web・クリエイティブ 1.現在webデザイン系のサイト開発・運営してるのですが、サイト内ジャンルに「人間関係」を入れるor 1 2022/11/12 11:11
- WordPress(ワードプレス) ブログについて サブドメインで運営する場合、ワードプレスのテーマは本ブログと違うものを使えますか? 1 2023/01/04 21:57
- SEO ブログでメインのドメインからサブドメインに上位表示した記事を移動した場合について その場合は、上位表 1 2023/01/18 21:54
- WordPress(ワードプレス) WordPress のブログを初期化したい。リスクは? 1 2023/01/01 05:47
- Web・クリエイティブ 就活用のポートフォリオについて質問です。 サイト開発・運営してるので過去の実績と一緒に載せようかと思 3 2022/11/11 16:03
- その他(開発・運用・管理) 【至急】.htaccessによるディレクトリ単位でのリダイレクト 2 2023/08/10 13:46
- C言語・C++・C# condaコマンドに対応したプロキシ設定が思うようにならないようです。 2 2022/04/11 17:15
- 英語 「~, such as, for example,~」例示表現を並べる意図について 2 2022/07/04 18:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
演奏記号の・・・・
-
再帰呼び出し
-
GetNextWindowがDLLファイルUse...
-
C#のループでtextboxに値を入れ...
-
C言語のサフィックスについて
-
VBAでcallで呼び出したsubを終...
-
[Excel2000]auto_closeを止めさ...
-
sublimit textっていうエディタ...
-
Excel VBAでsub,dimは何の略?
-
C言語のOpenGLで複数のテクスチ...
-
256色で任意の色を作成する時、...
-
VB.NETでのイベントの途中終了
-
コンボボックスからテキストボ...
-
エクセルVBAでテキストボッ...
-
三項でたとえば交換って
-
他のフォームから別のフォーム...
-
【VB.NET】テキストボックスに...
-
Excel ユーザーフォームで計算 ...
-
ユーザーフォームへのデータ入...
-
チェックボックスを操作できな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA public変数はどのようなこ...
-
演奏記号の・・・・
-
GetNextWindowがDLLファイルUse...
-
VB6.0の正規表現を使って、文字...
-
マクロ 条件式
-
Excel VBA: private sub 内の...
-
VBA 再帰について
-
フォルダ内にさらにフォルダが...
-
プロキシでキャッシュされる/...
-
上付文字と下付文字について(D...
-
分割コンパイルの方法がわかり...
-
プロシージャをまたいて変数を...
-
ファイルパスの変換方法
-
slapd再起動時にエラー
-
sub-paragraphとsub-sub-paragraph
-
pthread_cond_waitとptherad_co...
-
三項でたとえば交換って
-
C#のループでtextboxに値を入れ...
-
VBAでcallで呼び出したsubを終...
-
他のフォームから別のフォーム...
おすすめ情報
ご回答ありがとうございます。
パラメータのmodeはデータのIDを参照するものとなっているのですが、
2行目を
>RewriteRule ^$ /data?mode=$1 [L]
に変えると別のデータ(一番新しいデータ)が表示されてしまいます。
おそらく$1がサブドメイン部分を読み取れていないのだと思います。
$1の部分に実在するデータIDを入力した.htaccessを設置すると正常に表示されるので
ただしく読み込まれていないことが原因かもしれませんが、
やはり解決方法がわかりません。
何か考えられる原因はありますでしょうか。