• ベストアンサー

htaccess wwwなし

htaccessで、urlをwwwなしにさせる設定を行いテストをしました。 http://www.hoge.com にアクセスすると、まず 「この接続は保護されません。」と警告され続いてしたの方にあるそれでもアクセスするリンクをクリックすると「ドメインウェブの設定が見つかりません。」と表示されました。urlをwwwなしにするのはこれで成功なのでしょうか? wwwありにアクセスされるとwwwなしにりダイレクトさせる方法はありますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • asciiz
  • ベストアンサー率70% (6642/9410)
回答No.3

うーん、ちょっと原因に思い当たらなくなってきました…。 意味がちょっと違いますが、 RewriteCond %{HTTP_HOST} ^www.hoge.com と書いてみるとどうなるでしょうか? また、こちらにある >.htaccessでURLをwww無しに統一するクールな書き方 >https://www.garunimo.com/program/p33.php RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^ http://%1%{REQUEST_URI} [L,R=301] これに入れ替えてみるとどうでしょう? ---- 「ドメインウェブの設定が見つかりません」が出る原因として、本当にサーバー上の不具合だった、なんてパターンもあるようです。 >XREAでアップロードしたファイルが閲覧できない >https://help.value-domain.com/f_server/index.cgi?read=296&ukey=0 ↓スタッフ返答 >いただきました件、ご投稿メールアドレスより、ご契約状況を確認の上、 >対象サーバーの調査を行いましたところ、不具合が発生している状況でした。 サーバ管理者(借り元)に一度問い合わせてみてもいいかもしれません。

dhtfyjh
質問者

お礼

ご丁寧にありがとうございます

その他の回答 (2)

  • asciiz
  • ベストアンサー率70% (6642/9410)
回答No.2

>htaccessでwwwなしのコードを書く前までは両方で動いていました。 なるほど、それでは、転送設定ありで、普通に http://hoge.com/ にアクセスして表示できるでしょうか。 >これで大丈夫ですか? 3行目、書き換え文字列の後のフラグは「[R=301,L]」の順に書くのが一般的であるようです。 それぞれのフラグの意味が "R=301" → 301リダイレクトする "L" → Last(解釈終了) であるため、Lが先だとリダイレクトされないのかもしれません。

dhtfyjh
質問者

補足

>>なるほど、それでは、転送設定ありで、普通に http://hoge.com/ にアクセスして表示できるでしょうか。 そうみたいです。 http://hoge.com/ を表示しているところにwwwを書いて http://www.hoge.com/ にアクセスを試みると、ドメインエラー(ドメインウェブの設定が見つかりません。 になります。 また、Lの順序を入れ換えてもリダイレクトはされませんでした。

  • asciiz
  • ベストアンサー率70% (6642/9410)
回答No.1

>wwwありにアクセスされるとwwwなしにりダイレクトさせる方法はありますか? あります。と言うかおそらく、転送設定自体は、正しいです。 >「この接続は保護されません。」と警告され これは、https:// でないURLには出るようになってしまった警告なので、それ自体が出るのは仕方ありません。しかし、 >「ドメインウェブの設定が見つかりません。」 こちらは困るので、対処する必要があります。 構築されたWebサーバは、「http://www.hoge.com」と「http://hoge.com」の両方を、きちんと表示できるでしょうか? (DNS設定にも関連) まずはそこからです。 両方表示できるようになった上で、wwwあり→wwwなし 転送を仕込むと、「wwwなしに統一」したことになります。

dhtfyjh
質問者

補足

htaccessでwwwなしのコードを書く前までは両方で動いていました。 リダイレクトについては RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.hoge\.com RewriteRule ^(.*)$ http://hoge.com/ [L,R=301] これで大丈夫ですか?

関連するQ&A

  • 下層ディレクトリのwwwあり・なしの統一について

    お世話になります。 現在.htaccessを利用し、利用中のURLのwwwあり・なしの設定を行い、 www.hoge.comへのアクセスをhoge.comへ統一させる事に成功致しました。 ですがwww.hoge.com/foo/へのアクセスがhoge.com/foo/に統一されず、困っております。 ドメイントップ内.htaccessにて以下の様に表記を行っております。 RewriteEngine on RewriteCond %{HTTP_HOST} ^(www\.hoge\.com)(:80)? RewriteRule (.*) http://hoge.com/$1 [R=301,L] これに、 RewriteCond %{HTTP_HOST} ^(www\.hoge\.com/foo/)(:80)? RewriteRule (.*) http://hoge.com/foo/$1 [R=301,L] 等加えてみましたがどうも思う様にいきません。 /foo/直下に.htaccessを置き試してみましたが統一されないままです。 現在さくらインターネットのレンタルサーバにて設置作業を行っております。 どの様にすれば下層ディレクトリでのwwwありなしの統一が行えますでしょうか? どうぞご教示の程お願い致します。

  • .htaccessでの振り分け

    .htaccessでのPC・携帯からのアクセスを振り分ける方法を教えてください。 PC用URLが、hoge.com/pc/index.html 携帯用URLが、hoge.com/index.html にしたいと考えています。(既に携帯用ページは存在し、モバイルクローラーも回ってきている為、PC用ページのurlを/pc/にしたいため) 多くの過去質問、webサイトでは、携帯からのアクセスを/m/などの下位層へふるものはありましたが、PCアクセスを下位ディレクトリに振る方法を教えてください。 ※参考URLまたは、.htaccessの具体的な記述を教えてください。

  • .htaccessの設定方法について

    .htaccessの設定方法について ■やりたいこと 「ドメイン/html/test.html」にアクセスしたらtest.phpを表示したい ■.htaccessの内容(ドメイン/html/に設置) RewriteEngine on RewriteRule ^test.html$ test.php ■現在の状況 IEのアドレスの所に「ドメイン/html/test.html」とアドレス表示 「Webページがみつかりません」が表示される 記述方法が間違っているのでしょうか? ご存知の方がいらっしゃいましたら教えてください。 よろしくお願いします。

  • htaccessの書き方

    RewriteEngine On RewriteCond %{HTTP_HOST} ^dog.abcd.com$ RewriteCond %{REQUEST_URI} !^/dog/ RewriteRule (.*) /dog/$1 RewriteCond %{HTTP_HOST} ^cat.abcd.com$ RewriteCond %{REQUEST_URI} !^/cat/ RewriteRule (.*) /cat/$1 サブドメインを追加するには上記の記述をhtaccessに記入すればよいとサーバー会社の説明にありましたので、その通りにしました。 ところが、htaccessに設定していないサブドメインにアクセスすると、通常のドメインの内容が表示されてしまいます。 登録ドメインがabcd.comだとして、設定していないサブドメインがtest.abcd.comだとすると、test.abcd.comにアクセスするとabcd.comの内容がそのまま表示されてしまいます。 存在しないサブドメインにアクセスすると全てメインドメインの内容が表示されてしまうのは、検索エンジン対策としても思わしくないように思えます。 出来れば、存在しないサブドメインへのアクセスは404エラーになるようにしたいのですが、方法がわかりません。 htaccessで使われる言語の知識がなくチンプンカンプンなので 適当に以下のような感じでいろいろ試行錯誤していますが、なかなか思うようにいきません。 RewriteEngine On RewriteCond %{HTTP_HOST} ^dog.abcd.com$ RewriteCond %{REQUEST_URI} !^/dog/ RewriteRule (.*) /dog/$1 RewriteCond %{HTTP_HOST} ^abcd.com$ RewriteCond %{REQUEST_URI} !^/ RewriteRule (.*) /$1 RewriteCond %{HTTP_HOST} (ここでabcd.comまたはdog.abcd.com以外のリクエストは)$ RewriteCond %{REQUEST_URI} !^/404/ RewriteRule (.*) /404/$1 を表示させる、としたいのですが、このような命令文はありますでしょうか? どなたかアドバイスいただければ大変助かります。

    • ベストアンサー
    • HTML
  • .htaccessでサイトの引っ越し

    .htaccessでサイトの引っ越し サーバーとドメインの変更がり引っ越しをします。 調べてみたところ.htaccessでリダイレクトするべきとあったのですが書き方について質問です。 サイトのURLをhoge.co.jpからexsample.co.jpに変更します。 この場合の書き方ですが下記の一行でいいのでしょうか? RedirectMatch 301.* http://www.exsample.co.jp/ しかし上記の場合どんなURLであっても全てを新しいURLにリダイレクトしますよね? 階層やファイル名は全く同じになるので可能であれば実現したい事は・・・ ・旧ドメイン/aaa.htmlにアクセスがあれば新ドメイン/aaa.htmlにリダイレクト ・旧ドメイン/bbb.htmlにアクセスがあれば新ドメイン/bbb.htmlにリダイレクト ・旧ドメイン/ccc.htmlにアクセスがあれば新ドメイン/ccc.htmlにリダイレクト と全てをトップページにリダイレクトするよりはそれぞれのページにリダイレクトしてやる方が親切かと思ったのですがどのように書けばいいでしょうか?

    • ベストアンサー
    • HTML
  • .htaccessによる301リダイレクト

    www.hoge.jp/test_hoge/ このディレクトリ以下を www.piyo.com に、リダイレクトしたいです。 下記のように.htaccessを記載したのですが、 RewriteEngine On RewriteRule ^test_hoge(.*)$ http://piyo.com$1 [R=301,L] そのファイルはどこへ格納すればいいのでしょうか。 現在ルートディレクトリは /www/test_hoge/ となっています。 .htaccessを/www/の中にいれても /test_hoge/の中にいれてもエラーがおきてしまいます。 ただ、macのテキストエディットで作成しているからかなと思うのですが、そういうことはありえますか? どなたかご回答お願いします。

    • ベストアンサー
    • CSS
  • .htaccessで特定ドメインから以外はTOPへ

    www.popopo.comというサイトを持っていたとします そのサイトの中のdeep.htmlというページ(www.popopo.com/deep.html)のURLがどこかに貼られたとします。いわゆるディープリンク すると私のサイトドメイン以外から、外部から直接deep.htmlにアクセスされますよね しかし私は自分のサイトのトップページをまず見て欲しい考えです。 なので、自分のサイトのドメイン以外からディープリンクで来るアクセスを いったんトップページに飛ばしたいです。 そこで調べると、.htaccessを使うことができることまではわかりましたが 書き方が分かりません。 .htaccessを使って、www.popopo.comの文字列を含んだ場所以外からのディープリンクは全部、トップページwww.popopo.comに飛ばす方法を教えてください。

  • htaccessについて

    htaccessについて質問です。 http://hoge/test.dbにアクセスされないようhtaccessでdbのみ制限をかけました。 これだけではだめでしょうか? サイトを見ていると、公開ファイル(public)より上の階層にdbを置いておく等を見ましたがそこまでするひつようありますか?

  • .htaccessでリダイレクトしたいです@さくら

    .htaccessでwwwなしのサイトにリダイレクトをかけたいのですが、うまくいきません。 色んな方法がサイトにありそれを試しているのですが、 一瞬テストでうまくいったと思ったのですが、それ以降うまくいかなくなってしまいました。 使用しているプロバイダはさくらインターネットです。 今までに試したコマンドは下記です。 --------------------------- <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.hoge\.com)(:80)? RewriteRule ^(.*) http://hoge.com/$1 [R=301,L] </IfModule> --------------------------- RewriteEngine on RewriteCond %{HTTP_HOST} www¥.hoge¥.com RewriteRule .* http://hoge.com%{REQUEST_URI} [R=301,L] --------------------------- .htaccess を設置しているディレクトリは /home/hoge/www になります。 ぜひ教えていただけないでしょうか。よろしくお願いいたします。 また、.htaccessは変更してどのくらいで反映されるのか、補足的に教えていただけると助かります。 以上、よろしくお願いいたします。

  • .htaccessの書き方を教えて下さい。

    現在「A: http://○○○.jp/aaa/」と「B: http://aaa.com/」で同じサイトが表示されています。 「http://○○○.jp/」はレンタルサーバーのアカウントドメインで、その中の「aaaフォルダ」の中に独自ドメイン「http://aaa.com/」の中身がアップロードされているというわけです。 なので、現在は「http://○○○.jp/aaa/」でアクセスしても「http://aaa.com/」の中身が表示されている状態です。 これを、 A: http://○○○.jp/aaa/ ↑ 上記URLにアクセスされても、 B: http://aaa.com/と表示されるようにする為の.htaccessの書き方を教えて下さい。 よろしくお願いします。