質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

2回答

3156閲覧

サイト移転時のリダイレクト設定-ワードプレス

ebiPT

総合スコア15

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2017/04/29 03:48

編集2017/05/02 00:36

###前提・実現したいこと
初めて投稿させていただきます。無料ドメインから独自ドメインに切り替えてサイト移転したため、以前のドメインのすべてのページにアクセスがあった場合は301リダイレクトにて新サイトへ移って欲しいです。
ほぼ初心者のため、稚拙な内容であれば申し訳ありません。

###発生している問題・エラーメッセージ
全くリダイレクトされません。

###試したこと
.hatccessに301リダイレクトの為の記述をしました。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{http_host} ^旧サイトのアドレス
RewriteRule ^(.*)$ 新サイトのフルアドレス$1 [R=301,L]
</IfModule>

これを以前のサイトと新しく作ったサイトの.hatccessに記述しました。

また、これでも駄目だったので、プラグインのRedirectionを使って設定しましたが、やはりリダイレクトして貰えませんでした。

他に思い当たる方法がないため、皆さんどうかご助言ください。

---標準で入っていた.htaccessの内容---

# BEGIN VA SIMPLE BASIC AUTH <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP:Authorization} ^(.*) RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1] </IfModule> # END VA SIMPLE BASIC AUTH # 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 SetEnvIf Request_URI ".*" WpLoginNoLimit

---標準で入っていた.htaccessの内容ここまで---

###補足情報(言語/FW/ツール等のバージョンなど)
サーバーはエックスドメインの無料サーバー
ワードプレスのバージョンはWordPress 4.7.4
PHPはPHP7.0.7

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2017/05/01 19:33

質問文のコードはそれぞれコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
ebiPT

2017/05/02 00:37

なるほど、できました!どのようにすれば良いかわからず失礼ながらそのまま記載させて頂いていました。申し訳ありません、またありがとうございました!
guest

回答2

0

ベストアンサー

下記だけ(WordPress部分などは削除)でも500エラーがでますか?また、その際のURLは新ドメインですか?旧ドメインですか?

<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule (.*) http://example.com/$1 [R=301,L] </IfModule>

WordPress が動いていてURLを初期値から変更していたら、mod_rewrite は使えているはずです。(エックスドメインの無料サーバー で検索すると mod_rewrite は使えそうでした)

投稿2017/05/02 07:34

kei344

総合スコア69400

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ebiPT

2017/05/02 08:00

ありがとうございます。 上記に新ドメインを入れて記述しても500エラーは現在のところ出ていません。ですが、リダイレクトはトップページのみ利いており、他のページは元のサイトのまま閲覧できてしまう状態です。
kei344

2017/05/02 08:08

移転先のWordPressのURLの書き換えは行っていますか? 【WordPress の引越し - WordPress Codex 日本語版】 https://wpdocs.osdn.jp/WordPress_%E3%81%AE%E5%BC%95%E8%B6%8A%E3%81%97#.E3.83.89.E3.83.A1.E3.82.A4.E3.83.B3.E5.90.8D.E3.81.BE.E3.81.9F.E3.81.AFURL.E3.82.92.E5.A4.89.E6.9B.B4.E3.81.99.E3.82.8B.E3.81.A8.E3.81.8D 上記記事に書いてある下記ツールは使いましたか? 【Database Search and Replace Script in PHP / Interconnect IT – WordPress Consultants, Web Development and Web Design】 https://interconnectit.com/products/search-and-replace-for-wordpress-databases/
ebiPT

2017/05/03 01:16

このようなツールがあるのですね!移転方法がわからず、FTPソフトにてダウンロードし、ファイルのURLを新ドメインに書き換えてアップロードして作成しました。データベースもバックアップを取り、URLを書き換えてアップロードすることで使用しています。 現在は新サイトの方がいろんな編集を加えており、ある意味最新の状態なのですが、いまから上記ツールを使用するとデータベース等いろいろ書き換えられてしまい旧サイトの状態に戻るのですよね? できれば、複雑になってしまうかもしれないので申し訳ないのですが、現在の新サイトの状態は維持しつつ旧サイトから301リダイレクトが行えれば希望通りなのですが。。。 よろしくお願いします。
kei344

2017/05/03 02:22

> 旧サイトの状態に戻るのですよね? 違います。 新サイトで個別のページが新しいドメインで見られているかを確認してください。
ebiPT

2017/05/10 07:30

そうなのですね!少し私の理解できていないところのようです。 新サイトで個別のページをクリックしていくと、新しいドメインにはなっています。
kei344

2017/05/10 08:33

htaccess にWP用の記述が残っていませんか?また、キャッシュが残っていませんか?
guest

0

旧サーバーだけに、

RewriteEngine on RewriteRule (.*) http://新ドメイン/$1 [R=301,L]

と書いた.htaccessを置くのはどうでしょうか。
500エラーが出たら、そのサーバーではおそらくmod_rewriteが使えないのだと思います。

投稿2017/04/29 03:57

stmkza

総合スコア478

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ebiPT

2017/05/01 01:30 編集

ありがとうございます! 教えていただいたとおり記述してみたところ、500エラーなのかアクセスできませんでした。 ただ、同様の記述である、私が上記した <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{http_host} ^旧サイトのアドレス RewriteRule ^(.*)$ 新サイトのフルアドレス$1 [R=301,L] </IfModule> この記述でのRewriteだと動作しないものの、500エラーは出ません。 また、追加で記載しましたが、標準の.htaccessにもrewrite文が入っているのですが、それでもmod_rewriteが使えないサーバーの可能性はあるのでしょうか?
ahodana

2017/05/01 03:30

「IfModule 」 はそのあとに続くモジュールが組み込まれている場合のみ設定するという意思表示です
ebiPT

2017/05/01 18:55

なるほど。ではやはりrewriteが動作しない可能性が高いのですね。 その場合、PHPで301リダイレクトするしかないのでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問