/ サブドメインがメインドメインのhtaccessを使用しないようにする - .htaccess、ループ、リダイレクト、mod-rewrite、サブドメイン

サブドメインがメインドメインのhtaccess - .htaccess、loops、redirect、mod-rewrite、サブドメインを使用しないようにする

私はから多くの具体的な301のリダイレクトがありますhtaccessを介したメインドメインからサブドメインへ。メインの新しいサイトながら古いサイトは(メインから)サブドメインに移動されます。私は古いサイトのSEOを保存するのが好きです。したがって、新しいサイトから古いサイトへの301リンク。 (301のリンクが新しいサイトに存在しないと仮定します)。

問題は、サブドメインがメインドメインのhtaccessにアクセスしていることです。そのため、リダイレクトループが発生します。

念頭に置いていくつかの解決策。

  1. サブドメインがメインのhtaccessにアクセスできないようにする
  2. メインのhtaccessでサブドメインアドレスが検出された場合、htaccessを終了します
  3. 個々の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がサブドメインにリダイレクトされます。