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

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

新規登録して質問してみよう
ただいま回答率
85.49%
ドメイン

ドメインとは本来、領域や範囲の意味を持ち、インターネット上では特定の部分領域を指します。ネットワークやコンピュータの識別に利用され、所得することでホームページを公開したり、メールアドレスを作成できます。

mod_rewrite

ApacheウェブサーバーのためのURL書き換えモジュールです。主にプリティーURLに使われていますが、同様に単純置換を超えた、多様なタスクの処理能力や柔軟性があります。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

Q&A

2回答

368閲覧

ドメイン変更後の301リダイレクトについて

ann_desu

総合スコア8

ドメイン

ドメインとは本来、領域や範囲の意味を持ち、インターネット上では特定の部分領域を指します。ネットワークやコンピュータの識別に利用され、所得することでホームページを公開したり、メールアドレスを作成できます。

mod_rewrite

ApacheウェブサーバーのためのURL書き換えモジュールです。主にプリティーURLに使われていますが、同様に単純置換を超えた、多様なタスクの処理能力や柔軟性があります。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

0グッド

0クリップ

投稿2018/10/23 10:50

編集2018/10/23 11:15

ドメイン変更に伴い、新サイトへの301リダイレクトを行おうとしています。

変更点は以下になります。
・ドメイン
・ディレクトリ
・ファイル名
・新サイトの方はhttps化

全て変更されており、これを.htaccessでリダイレクトしようとしても上手くいきません。

いろいろなサイトからコピペして試してみたのですが・・・

RewriteEngine on RewriteCond %{HTTP_HOST} ^(old.com)(:80)? [NC] RewriteRule ^(.*) https://new.com/$1 [R=301,L] RewriteRule ^/old-directory/old-page$ https://new.com/new-directory/new-page [R=301,L]

ドメインのみリダイレクト、1ページだけリダイレクトなど出来たのですが、最初のリダイレクト指令の後にまたrewriteで次のリダイレクト先を指定しても反応しません。

http://old.com ↓ https://new.com トップページだけではなく、変更したURL全てを http://old.com/old-directory/old-page ↓ https://new.com/new-directory/new-page というようにリダイレクトしたいです。

初心者で質問内容も分かりにくいかと思いますが、宜しくお願い致します。

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

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

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

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

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

ssasaki

2018/10/23 10:54

これだけだと提示のリダイレクト設定は書けますが、おそらく求めているのはそれではないと思うので、実際に設定してみてうまくいかなかった設定を具体的に載せたほうが良いと思いますよ。
ann_desu

2018/10/23 11:11

ありがとうございます。詳しく修正させていただきました。
guest

回答2

0

列挙可能なのであれば下記のように Redirect で処理することも可能かと思います。

htaccess

1Redirect Permanent /old-directory/old-page https://new.example.com/new-directory/new-page

規則性があるのであれば、ご質問のようにmod_rewriteを使用するほうがよいかもしれません。

投稿2018/10/23 11:21

編集2018/10/23 11:22
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

ann_desu

2018/10/23 11:47

ありがとうございます。こちらも試してみます。
guest

0

まず、「最初のリダイレクト指令の後にまたrewriteで次のリダイレクト先を指定しても反応しません。 」については、

RewriteRule ^(.*) https://new.com/$1 [R=301,L] RewriteRule ^/old-directory/old-page$ https://new.com/new-directory/new-page [R=301,L ]

上記の順番を逆にしたらどうなりますか?

「変更したURL全てを」という方は、変更の規則性はあるのでしょうか?
ないなら、1つずつ書くしかありませんが。。。

投稿2018/10/23 11:18

ssasaki

総合スコア1167

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

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

ann_desu

2018/10/23 11:36

RewriteEngine on RewriteCond %{HTTP_HOST} ^(old.com)(:80)? [NC] RewriteRule ^/old-directory/old-page$ https://new.com/new-directory/new-page [R=301,L] RewriteRule ^(.*) https://new.com/$1 [R=301,L] のように逆にしますと、トップページはリダイレクトされませんが http://old.com/old-directory/old-pagehttps://new.com/new-directory/new-page のリダイレクトは成功します。 規則性はないかと思います・・・。 ディレクトリは同じでその下のページは全て適当なので・・・。
ann_desu

2018/10/23 12:27

この一つずつ書くというのは、ファイルを分けるという事でしょうか? 初心者ですみません・・・。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問