0

私は、アドオン ドメインとして redpeppergallery.com.au を持つ stonycreekgallery.com.au に WordPress サイトを持っています (訂正: 「パーク ドメイン」、申し訳ありません)。

訪問者には、主に stonycreekgallery.com.au としてサイトを閲覧してもらいたいのですが、単一のページhttp://stonycreekgallery.com.au/red-pepper-gallery/にアクセスするたびに、URL を redpeppergallery.com.au に書き換えてもらいたいと考えています。

同様の質問(未回答)を見つけて、次のことを試しました:

RewriteCond %{HTTP_HOST} ^(www.)?redpeppergallery.com.au$ [NC]
RewriteCond %{REQUEST_URI} !^/red-pepper-gallery/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /red-pepper-gallery/ [L]
RewriteCond %{HTTP_HOST} ^(www.)?redpeppergallery.com.au$ [NC] 
RewriteRule ^(/)?$ red-pepper-gallery/ [L] 

これらのルールは現在ドメインで有効です。

私への指針はありますか?ティア、ティム


編集:いくつかの明確化...

  • WordPressサイトで実行されるサイトは1つだけです
  • redpeppergallery のリンクは、WordPress で redpeppergallery.com.au を指すように設定されています。
  • redpeppergallery は、パークされたドメイン/ドメイン エイリアスです (上記では、誤ってアドオンと呼んでいました)
  • redpeppergallery.com.au は、 http: //stonycreekgallery.com.au/red-pepper-gallery/ に直接アクセスしてください。

以下は仕事の半分を行います - redpeppergallery を正しいページに直接移動します:

RewriteCond %{HTTP_HOST} ^(www.)?redpeppergallery.com.au$ [NC]
RewriteCond %{REQUEST_URI} !^/red-pepper-gallery/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://stonycreekgallery.com.au/red-pepper-gallery/ [L]

タスクの 2 番目の部分は次のとおりです: ページ stonycreekgallerycom.au/red-pepper-gallery/ (このページのみ): URL を redpeppergallery.com.au として表示します。これは私が確信していないことです...私はそれ以来試しました:

RewriteCond   %{REQUEST_FILENAME}   ^stonycreekgallery.com.au/red-pepper-gallery/?$         [NC]
RewriteRule   http://redpeppergallery.com.au/  [R=301]

遅かれ早かれループにヒットすることを期待していますが、まだ発生していません:)最後のスニペットで試したバリエーションは効果がありません...

4

1 に答える 1

0

これを、 stonycreekgallery.com.auドメインのドキュメント ルートにある htaccess ファイルに追加してみてください。

Redirect 301 /red-pepper-gallery http://redpeppergallery.com.au/

リダイレクトしたくないが、ブラウザーの URL アドレス バーをstonycreekgallery.com.auのままにしたい場合は、構成に少し依存します。

両方のドメインが同じドキュメント ルートにパークされている場合 (たとえばhttp://stonycreekgallery.com.au/、 とhttp://redpeppergallery.com.au/が両方ともディレクトリから提供されている/something/www/root場合)、ドキュメント ルートの htaccess ファイルでこれを行います。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?stonycreekgallery.com.au$ [NC]
RewriteRule ^red-pepper-gallery/(.*) /$1 [L]

それ以外の場合、一方のドキュメント ルートが他方の内部にある場合、たとえば、http://stonycreekgallery.com.au/ディレクトリから提供されている/something/www/rootが、ディレクトリhttp://redpeppergallery.com.au/から提供されている場合は、次の/something/www/root/galleryようにします。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?stonycreekgallery.com.au$ [NC]
RewriteRule ^red-pepper-gallery/(.*) /gallery/$1 [L]

2 つのドメインが完全に別のドキュメント ルートから提供されている場合は、[P]フラグを使用する必要がありますが、mod_proxy が読み込まれている場合にのみ機能します。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?stonycreekgallery.com.au$ [NC]
RewriteRule ^red-pepper-gallery/(.*) http://redpeppergallery.com.au/$1 [P,L]
于 2012-08-08T03:23:38.947 に答える