サポート » 使い方全般 » 301リダイレクトをしたけれど内部サーバーエラーになります。

  • 解決済 koreyoka01

    (@koreyoka01)


    旧ブログから新ブログへドメインを変更して引越し、301リダイレクトをやってみましたがうまくいきません。分かる方、教えて頂けませんでしょうか。

    旧ブログ:http://koreyoka01.com/(サーバー:ミニバード)
    新ブログ:http://asahix01.com/(サーバー:WPエックスサーバー)
    ―――――――――――――――――――
    ☆やったこと。
    Terapadで以下のコードを書いて「a.htaccess.txt」とファイル名をつけて、FFFTPでアップ→アップ後ファイル名を「a」と「.txt」を消して「.htaccess」に変えました。

    RewriteEngine On
    RewriteCond %{http_host} ^www.koreyoka01.com
    RewriteRule ^(.*) http://www.asahix01.com/$1 [R=301,L]
    redirect 301 /koreyoka01.com/2640 http://asahix01.com/post/2640

    ☆結果
    旧ブログが「内部サーバーエラー」と表示され、旧ブログそのものが表示されなくなってしまいました。

    元々「.htaccess」ファイルがあり、それに上書きしてしまいました。前の内容はバックアップはとっていません。

    戻そうと思って、ミニバードで他のドメインにWordPressを新しくインストールして↓この「.htaccess」ファイルの内容をコピペしてアップしてみましたが、だめでした。

    #####phpversion#####
    AddHandler x-httpd-php5.3 .php .phps
    #####end:phpversion#####

    この場合は、旧ブログのトップページだけ表示されましたが、各記事へはいけませんでした。
    ―――――――――――――――――――

    どのようにしたらいいでしょうか?
    お知恵を拝借できれば・・と思います。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • 追記です。サーバーのエラーログを見ると

    [error] [client ・・] File does not exist: /home/koreyoka01/koreyoka01.com/public_html/robots.txt

    こうなっていました。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    あー、

    元々「.htaccess」ファイルがあり、それに上書きしてしまいました。前の内容はバックアップはとっていません。

    これが原因ですね。。。
    WordPressのパーマリンク設定のための記述がごっそり消えてしまっているせいだと思われます。

    まずはためしにミニバードの方の.htaccessを

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    こうしてみてください。
    もしこれでちゃんと元通りアクセスできるようになったら、次に

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    
    RewriteCond %{HTTP_HOST} ^koreyoka01.com$
    RewriteRule ^/(.*) http://www.asahix01.com/$1 [R=301,L]
    </IfModule>

    こうしてみてください。
    それぞれの段階でエラーが出たかどうか、出た場合はどういうエラーだったかお知らせください。

    追記です。サーバーのエラーログを見ると
    [error] [client ・・] File does not exist: /home/koreyoka01/koreyoka01.com/public_html/robots.txt
    こうなっていました。

    これは関係無いですね。robots.txt が無いよってだけなので。

    mypacecreator様

    丁寧にご返信いただきありがとうございます!m(__)m感謝です。

    さっそく両方やってみましたが、文字化けでうまく表示されませんでした。
    エラーログはこちらです。

    /home/koreyoka01/koreyoka01.com/public_html/.htaccess: Invalid command ‘\xef\xbb\xbfRewriteEngine’, perhaps misspelled or defined by a module not included in the server configuration

    どうでしょうか・・。

    その後、ミニバードのヘルプの方に
    「PHPバージョンを5.1.6から→5.3.3に変えてやってみてください」
    と言われましたので、やってみました。

    するとmypacecreatorさんが書いてくれたコードで
    1つ目も2つ目も表示されました!

    ただ、301リダイレクトのチェックで調べたら
    「301」ではなく「200」になります。

    時間が経てば「301」に変わるのでしょうか・・?

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    301リダイレクトのチェックで調べたら

    これは、どういうもので、どのように調べたのでしょうか?

    ちなみに「200」というのは正常を表すステータスです。

    mypacecreator様
    たびたびすみません。返信ありがとうございます。

    こちらのページのチェックツールを使いました。
    http://tools.seochat.com/tools/header-checker-tool/

    旧ブログのURL(http://koreyoka01.com/)を入れたら、結果が301ではなく、200になりました。転送されていないということでしょうかね・・。

    200:要求されたURLのページが正常にWebサーバーで処理されました。
    301:要求されたURLが恒久的に別のURLに再割り当てされており、そのURLのページが要求されます。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    たしかに、転送されてませんねー。
    私もあまりmod_rewriteは得意じゃないのでいけないんですが、旧ブログの.htaccessを

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    Redirect 301 / http://asahix01.com/

    コレだとどうですか?

    mypacecreator様

    ありがとうございます。

    その後、ミニバードでサイト転送という項目があるのを見つけて
    やってみたところ、無事できました。

    色々提案してくださってありがとうございました(T△T)
    本当に感謝ですm(__)m!!

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    解決したようで何よりです!
    トピックのステータスを[解決済み]に変更おねがいしますね!

    ありがとうございました!「解決済み」にしておきます。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • トピック「301リダイレクトをしたけれど内部サーバーエラーになります。」には新たに返信することはできません。