こんにちは。
度々の質問で申し訳ないのですが
旧サイトMTから新サイトWPに
.htaccessを使った、301リダイレクトを行おうと
しているのですが動作しません。
都合上、旧サイトのFTPとサーバのパスワードが分からない為
MTのみの機能で行おうとしています。
手順は
Movable Typeで
デザイン→テンプレート内の「インデックステンプレートの作成」
で.htaccessを作成し、記述は
「mod_Rewrite」が利用できるのか分からなかった為、利用できる場合の
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
RewriteEngine on
RewriteRule ^old.html$ http://www.example.com/new.html [R=301,L]
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
と、利用できない場合の
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Redirect 301 /doc/old.html http://www.example.com/doc/new.html
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
と
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Redirect permanent /aaa.html http://new/aaa
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
を試したのですが動作しませんでした。
実際にはこういった記述をしました。
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Redirect permanent http://www.○○-○○.com/ http://www.○○○○.com/
(新サイトは旧サイトから「-」を抜いたURLです)
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
上記の転送元に当たる「old.html」「/aaa.html」のパスとは
旧URL、http://www.○○-○○.com/ではなく
Movable Typeの公開パスのウェブサイトパス
/var/www/vhosts/○○-○○.com/httpdocs/○○/
を指定するのでしょうか?
それと
インデックステンプレートの作成で
作った場合の.htaccessはどこのディレクトリに
作成されるのでしょうか?
旧サイトと新サイトでは、IP アドレスが変わるだけでしょうか。.htaccess の内容の前に、どうしたいかを明確にしてください。
前のスレッドは承知しております。
.htaccessはこのような感じでしょうか。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ http://new-site.com/$1 [L]
</IfModule>
>インデックステンプレートの作成で
>作った場合の.htaccessはどこのディレクトリに
>作成されるのでしょうか?
設定>全般>ウェブサイトパスになります。
yagishitaさん
Hideki Abeさん
返信有難うございます。
旧サイトのアドレスは
http:///newsite.com/bbb/ccc/ddd/
と
http:///newsite.com/
でもトップページが表示されます。
旧サイトからはドメインとサーバと
ディレクトリ構造も変わります。旧サイトはウェブサイトとブログが同一
のドメインを使って、MTで構築しています。
以下の記述後、MTの再構築を何度か行い
なんとか旧サイトのトップページから
新サイトのトップページへはリダイレクト出来きました。
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Redirect permanent /bbb/ccc/ http://newsite.com/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
ただ旧サイトの他のページを新サイトのページに
個別にリダイレクトしたいのですができません。
試した記述は
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Redirect permanent /bbb/ccc/ http://fujitajidousya.com/
Redirect permanent /bbb/ccc/cat1/post-1.html http://newsite.com/会社概要/
Redirect permanent /bbb/ccc/cat2/ http://newsite.com/お問合せ/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
検索サイトから旧サイトのhttp://old-site.com/bbb/ccc/cat2/
にアクセスするとリダイレクトされるのですが
http://newsite.com/cat2/
とブラウザのアドレスバーに表示され、
用意していないページの為、エラーが出ます。
旧サイトの階層を引き継いでしまって
リダイレクトされているということですよね?
Hideki Abeさんの記述頂いた方法で
リダイレクトは出来たのですが
http://newsite.com/ccc/
にアクセスしてしまいます。
mod_rewriteは対応しているか
分からなかったのですが、転送されたということは
対応しているということですね。
可能かどうか定かではないのですが
実際にhttp://newsite.com/cat2/
のページを作りそこから
http://newsite.com/お問合せ/
に内部で301リダイレクトを使って
転送させようかと思っています。
ブログの記事として作成しているページは
.htaccessのファイルを「ブログテンプレートの管理
インデックステンプレート」で
ブログの方でも作成しないと動作しないということは
ありませんよね?
訂正です。
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
旧サイトのアドレスは
http:///newsite.com/bbb/ccc/
と
http:///newsite.com/
どちらのアドレスを使っても表示されます。
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
http:///newsite.com/bbb/ccc/ddd/
が間違いで
http:///newsite.com/bbb/ccc/
が正しいサイトのアドレスです。
旧サイトと新サイトでパスが違うということですね。
まず、先に私が回答したRewriteRuleは消してください。
下記のように記述すると、旧サイトで/aboutにアクセスした際、新サイト(ここでは仮にシックスアパート様で表記しています)へ301リダイレクトします。
リダイレクト後、ブラウザのURL欄は、http://www.sixapart.jp/about/と表示されます。
Redirect permanent /about http://www.sixapart.jp/about/
上記を踏まえて、ページ毎に調整していってみてください。
-----
私も仕事でWeb制作を請け負っておりますので、このサイトではエッセンスやヒントを書くことに留まることをご了承頂ければと思います。
Redirect permanent /bbb/ccc/cat1/ http://new-site.com/会社概要/
で目的の場所にリダイレクト出来ました。
これで無事、移転できそうです。
誠に有難うございます。
もう一点、ご存知でしたら教えて頂きたいのですが
Googleのウェブマスターツールでのアドレス移転を
行いたいのですが、ルートレベルのドメインを登録しないと
機能しないようなのです。
旧サイトのウェブ公開パスが
http://old-site.com/bbb/ccc/
なのですが、こちらは登録できました。
登録するためにはhtmlのファイルを
http://old-site.com/google.html
として置くか、METAタグに記述するかになるのですが
MTの機能でhttp://old-site.com/
以下にファイルをアップロードすることは
出来るのでしょうか?
Googleの検索ページで記載されているURLは
http://old-site.com/
で、上述のURLと、このURLをブラウザに入力すると
どちらのURLでも、トップページにアクセスできる状態です。