同じサーバーを指し、ネームサーバーによって受け入れられている2つのドメイン名がある。私のホストはこれをドメインエイリアスと呼びます。古いワードプレスのブログolddomain.com
はブログを運営していましたが、新しいドメインnewdomain.com
は改訂されたブログとポートフォリオサイトをホストしています。古いホームページのトラフィックをリダイレクトするが、ブログ投稿を通過する:WordPress&htaccess
私のクライアントは、古いブログトラフィックをキャプチャして通過させたいと考えています。ドメインエイリアスが原因で、すべて正常に動作します。言い換えれば、私は.htaccess
ファイルに何もせずに、この内部リダイレクトはすでに起こります
http://olddomain.com/year/month/day/post-slug/はすでににリダイレクト: http://newdomain.com/year/month/day/post-slug/
問題は、我々はまた、新しいにolddomain.com
ホームページトラフィックをリダイレクトする必要があるということですブログのリンク先ページ。古いサイトのホームページはブログでしたが、新しいサイトのホームページは個人のポートフォリオです。そこで、私が行うためにhtaccessファイルを必要とするものである:
- は
- のために意図されたすべてのトラフィックを取る上で述べたように通過現在のドメイン名を保持し、可能にしたネームサーバによって、私のホストドメインエイリアスの設定旧ホームページとこのようになります新しいブログのランディングページにリダイレクト:
olddomain.com(nothing else here)
がnewdomain.com/blog/(nothing else here)
にリダイレクトする必要があり、私が午前問題は、私その任意のソリューションです上記のリダイレクトの混乱を避けるために、ブログの投稿自体に起こっている自然なリダイレクトを行います。私は両方を同時に持つことができるまでには至りません。 htaccess
は、index.phpファイル用に書き換えられる標準のWordPressチャンクも保持する必要があります。
これはolddomain.com
をnewdomain.com/blog/
に書き換えていますが、内部ドメインエイリアスのリダイレクトを許可するのではなく、特定のブログ投稿へのすべての古いトラフィックをホームページに送り返して送信します。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteCond %{HTTP_HOST} (www.)?olddomain.com [NC]
RewriteRule ^(.*)$ http://newdomain.com/blog/ [R=302,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
ありがとうございます。
閉じると、私が望むベースレベルのリダイレクトが得られます。しかし、今では '/年/月/日/ポストslug /'のようないくつかのREQUEST_URIのような古いブログ記事をリクエストして '/ blog /'にリダイレクトします。 –
私はそれが以前(ブラウザ/ DNSキャッシング)私を偽造するのを見たので、うまくいきましたと言うのは躊躇しています。私は今日それをチェックし続けますが、それは有望そうです。どうもありがとうございました。一度私が確認することができます。 –
優秀、ありがとうございました。それが私が望むように動作することが複数の人によって確認されました。 –