私はから多くの具体的な301のリダイレクトがありますhtaccessを介したメインドメインからサブドメインへ。メインの新しいサイトながら古いサイトは(メインから)サブドメインに移動されます。私は古いサイトのSEOを保存するのが好きです。したがって、新しいサイトから古いサイトへの301リンク。 (301のリンクが新しいサイトに存在しないと仮定します)。
問題は、サブドメインがメインドメインのhtaccessにアクセスしていることです。そのため、リダイレクトループが発生します。
念頭に置いていくつかの解決策。
- サブドメインがメインのhtaccessにアクセスできないようにする
- メインのhtaccessでサブドメインアドレスが検出された場合、htaccessを終了します
- 個々のhtaccessを自分専用にします。
試しました。 [L]。 [終わり]。 [NC]
これはサブドメインhtaccessです
Redirect 301 /changeemail https://somethingsomething
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} baiduspider|facebookexternalhit|twitterbot|rogerbot|linkedinbot|embedly|quora link preview|showyoubot|outbrain|pinterest [NC,OR]
RewriteCond %{QUERY_STRING} _escaped_fragment_
RewriteRule ^(.*)$ http://service.prerender.io/http://%{HTTP_HOST}$2 [P,L]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
RewriteRule ^ - [L]
RewriteRule ^ /index.html`
これはメインドメインのサンプルです301
Redirect 301 /register www.subdomain.com/register
回答:
回答№1は0メインのhtaccessへのリダイレクトは必要ですか?
たとえば、次のようなファイル構造があるとします。
/ domainroot / domainroot / mysub
/ domainrootでリダイレクトを行うのではなく、次のように/ domainroot / mysubのhtaccessにリダイレクトのみを設定します。 RedirectMatch ^ / mysub /(.*)$ http://mysub.domain.com/$ 1
これにより、子パスの場合でも、すべてのURLがサブドメインにリダイレクトされます。