301リダイレクトで一部URLがFC2エラーへ飛ぶ問題の解決方法

このQ&Aのポイント
  • ドメイン移転のため、301リダイレクトを行いたいですが、一部のURLでFC2エラーが発生しています。
  • .htaccessファイルに記述したリダイレクトルールが一部うまく機能していないようです。
  • 特に、aaa.web.fc2.com/bbb.htmlからbbb.web.fc2.com/ccc.htmlへのリダイレクトがエラーになります。
回答を見る
  • ベストアンサー

301リダイレクトで一部URLがFC2エラーへ飛ぶ

301リダイレクトで一部URLがFC2エラーへ飛ぶ問題についての解決お願いします。 ドメイン移転のため、301リダイレクトをしようとしています。 現在FC2の無料ホームページを使用しています。 aaa.web.fc2.comからbbb.web.fc2.comへ301リダイレクトしようとしています。 下記のように.htaccessを記述したのですが、 aaa.web.fc2.comからbbb.web.fc2.com、 aaa.web.fc2.com/index.htmlからbbb.web.fc2.com、 aaa.web.fc2.com/ddd.htmlからbbb.web.fc2.com/ddd.html へはリダイレクトが成功しているのですが、 aaa.web.fc2.com/bbb.htmlからbbb.web.fc2.com/ccc.htmlへは、 aaa.web.fc2.com/bbb.htmlを入力するとFC2のページがないというエラーページに飛びます。 この問題の解決をどうぞよろしくお願いします。 RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ http://aaa.web.fc2.com/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^aaa\.web\.fc2\.com RewriteRule (.*) http://bbb.web.fc2.com/$1 [R=301,L] Redirect 301 /bbb.html http://bbb.web.fc2.com/ccc.html Redirect 301 /ddd.html http://bbb.web.fc2.com/ddd.html

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

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5076/13259)
回答No.1

bbb.web.fc2.com に bbb.html は無いのですね? それなら正しい動作ですね。 .htaccess の5行目で aaa.web.fc2.com/bbb.html に来たアクセスを bbb.web.fc2.com/bbb.html へリダイレクトさせています。 ddd.html が成功しているのは7行目の設定では無く、5行目の設定でリダイレクトした結果です。 4行目と5行目の間に RewriteRule ^bbb.html$ http://bbb.web.fc2.com/ccc.html [R=301,L] を入れましょう。 そして、6行目と7行目は機能していないので消して大丈夫です。

tomobe--
質問者

お礼

できました! 失敗する理由と解決法ありがとうございました

関連するQ&A

  • .htaccessを使用したリダイレクトの書き方

    .htaccessを使った301リダイレクトの書き方を教えてください。 ドメインは移転後も同じものを使用し、下記のようにリダイレクトしたいと考えています。 /bbb/を http://www.aaa.com/blog/bbb/ にリダイレクト。 /bbb/ddd.htmlを http://www.aaa.com/shop/ddd/ にリダイレクト。 ------------------- Redirect permanent  /bbb/ http://www.aaa.com/blog/bbb/ Redirect permanent  /bbb/ddd.html http://www.aaa.com/shop/ddd/ ------------------- こう書いてしまうと、1行目は正常にリダイレクトされるのですが、 2行目が http://www.aaa.com/blog/bbb/shop/ddd/ にリダイレクトされて しまいます。 このような場合、どのように記述さればよろしいのでしょうか?

  • パラメーター付きのURLをリダイレクトしたい

    お世話になります .htaccess でリダイレクトを行いたいのですが、パラメータ付きのURLの為かリダイレクトができません。 .htaccess内の記述↓ redirect 301 /aaa/bbb.php?N=1 http://www.aaa.com/index.html 「?=N1」の部分を取れば問題なくリダイレクトします パラメータ付きのURLはリダイレクト可能でしょうか? よろしくお願いいたします

  • 301リダイレクトの設定について

    htmlコーディングの知識は多少あるのですが、サーバーの設定については全くの初心者です。 .htaccessリダイレクトの方法がわからないのでお教えください。 旧サイトが「https://www.sample.com/aaa/bbb/」にあったのですが、新しいサイトを「https://www.sample.com/ccc/」に作成しました。新サイトと旧サイトのディレクトリの構成はまったく異なります。 旧サイト全体に301リダイレクトを設定して旧サイトのどのページにアクセスしても新サイトのTOPページに移動させたいのですが、.htaccessの書き方がわかりません。 Googleでいろいろ検索し、下記のように記述した.htaccessファイルをbbbディレクトリに格納してみましたが、うまくいきませんでした。 <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^aaa/bbb/(.*) /ccc/$1 [R=301,L] </IfModule> また、以下ではInternal Server Errorになりました。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^(www.sample.com)(:80)? [NC] Redirect permanent /aaa/bbb/ RewriteRule ^(.*) https://www.sample.com/ccc/$1 [R=301,L] </IfModule> アドバイスをいただけないでしょうか。 よろしくお願いいたします。

  • リダイレクト方法

    http://domain.com/aaa.html http://domain.com/bbb/bbb.html http://domain.com/ccc/index.html 上記のURLのように存在しないファイルやディレクトリにアクセスしたら http://domain.com/ddd/index.html にリダイレクトしたいと考えております。 どのようにすれば、実現できますでしょうか? ご存知の方、宜しくお願いします。

  • リダイレクトで「自動転送設定がループしています」

    サイトリニューアルに伴いディレクトリ構造が変わるので、.htaccessで以下のように書いてリダイレクトしようと思いましたが、「このアドレスへのリクエストに対するサーバの自動転送設定がループしています。」と出てリダイレクトが出来ません。 Redirect permanent /aaa/bbb/ccc/xxx.html http://hoge.com/aaa/123 試しにリダイレクト先を全く別のURLにしてみたら正常にリダイレクトされるので、上記の記述自体は問題ないと思うのですが、新しいサイトにはdrupalを使っていて、.htaccessには以下の内容が予め記述してあります。何かバッティングしているのでしょうか? <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] </IfModule> PHPは5.2.5です。

    • 締切済み
    • PHP
  • 301リダイレクト 勝手にhtmlがつく

    .htaccessでリダイレクトをしたいのですが、うまくできません。 http://○○.web.fc2.com/ ↓ https://○○.com に移転したいです。 Redirect 301 / https://○○.com は、うまくリダイレクトできるんですが、他のページができません。 Redirect 301 /faq.html https://○○.com/faq/ ↓ https://○○.comfaq.html になってしまいます。 ディレクトリの構造が違うので、ムリなんでしょうか? ちなみに、サーバは、fc2ホームページから独自ドメインでロリポップに移転です。

  • 動的URLを静的URLへリダイレクト

    サーバの移転にともない、古いURLから新しいURLへリダイレクトさせる作業を行っています。 旧:http://aaa.bbb.com/default.asp?year=yyyy&month=mm ↓ 新:http://mmm.nn.co.jp/yyyymm しかし上記のようにパラメータを持っているURLはうまくリダイレクトされません。 今回の場合、動的ページを静的ページに見せるのではなく、URL欄も表示も静的ページに遷移させます。 この作業にはISAPI_Rewriteを使っていますが、ISAPI_Rewriteで検索してもmod_rewriteで検索しても、静的URLから動的URLへのリダイレクト(URLは静的で表示が動的ページの内容)しかでてきません。 そもそも正規表現に「?」を入れるとリダイレクトできないのか(?がエスケープされていない気がします)、書き方が間違っているのなら正しい書き方を教えていただけると助かります。 [現在使っている記述] RewriteRule ^aaa/bbb.asp\?year=(.*)&month=(.*)$ http://one.case.com/ddd/$1$2 [R,L] よろしくお願いいたします。

  • 動的URLから静的URLへの301リダイレクト

    下記のように動的URLを静的なURLに置き換えています。 http://www.sample.com/dir/aaa/index.php?content_id=1 ↓ http://www.sample.com/aaa_index.content_id_1.htm この動的URLを、置き換えた静的URLへ301リダイレクトさせたいのですが、うまくいきません。 htaccessの記述を下記のようにしましたが、多分、動的URLの「?」があるためうまくいかないようです。 RewriteEngine on RewriteBase / RewriteRule ^dir/aaa/index\.php?content_id=(.*)$ /aaa_index.content_id_$1.htm [R=301,L] 「?」が含まれる動的URLから静的URLに301リダイレクトさせたい場合、どのように記述すれば良いでしょうか?

  • httpからhttpsへのリダイレクト方法

    すいません、よくわかりませんので教えて下さい。.htaccessに記述してhttpにアクセス来たものをhttpsへリダイレクトしたいです。 今の状況は下記です。 AddHandler application/x-httpd-php53 .php RewriteEngine On # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(sanetsu.com) RewriteCond %{REQUEST_URI} !^/(sanetsu.com)/ RewriteRule ^(.*)$ http://www.sanetsu.com/$1 [L] # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(www.burikama.com) RewriteCond %{REQUEST_URI} !^/(www.burikama.com)/ RewriteRule ^(.*)$ /%{HTTP_HOST}/$1/ [L] # Main RewriteRule for multidomain. RewriteCond %{HTTP_HOST} ^(burikama.com) RewriteCond %{REQUEST_URI} !^/(burikama.com)/ RewriteRule ^(.*)$ http://www.burikama.com/$1 [L] # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress すいません、上記の記述をどのように変更したらhttpsへリダイレクトさせることができますでしょうか?前任のweb担当の方と連絡が付かないので教えていただけたらありがたいです。 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • 301リダイレクトについて

    aaa.jpとaaa.comというページがあります。 条件はドメインが変わって、複数のそれぞれのページを個別にリダイレクトさせます。 (aaa.jp/~.htmlの複数のページをaaa.com/~.htmlのページに個別にリダイレクト) 以下のhtaccessの記述で間違いないでしょうか? 間違っていた場合正しい記述方法を教えていただければ幸いです。 RewriteEngine on RewriteBase / RewriteRule aaa.jp/123.html http://aaa.com/abc.html [R=301,L] RewriteRule aaa.jp/124.html http://aaa.com/aba.html [R=301,L] 以下 直ぐ上のような複数の記述が続きます。 初心者ですので的外れなことを記載しているかもしれません。 その点はご容赦ください。

    • 締切済み
    • SEO

専門家に質問してみよう