30

約 1 時間インターネットを調べた後、質問に対する答えが見つかりませんでした。だから私は間違ったキーワードで検索しているか、私が望むものは不可能です。

欲しいもの:
拡張子が異なる複数のドメインがあります。たとえば、次のようになります。

  • mydomain.be
  • mydomain.nl

ここで必要なのは、mydomain.be が mydomain.nl にリダイレクトされることです。これに対する解決策は、インターネットで見つけたもので、.htaccess が必要な場合に以下に示します。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^mydomain.be$ [OR]
RewriteCond %{HTTP_HOST} ^www.mydomain.be$
RewriteRule (.*)$ http://www.mydomain.nl/$1 [R=301,L]

このコードでは、mydomain.be と入力すると、mydomain.nl にリダイレクトされます。ただし、アドレスバーの URL も mydomain.nl に変更されます。私が望むのは、URL をアドレスバー mydomain.be に保持することです。

したがって、mydomain.be:

  • URL を保持
  • mydomain.nl のコンテンツを表示

方法?

4

2 に答える 2

22

mod_rewrite を介して実行することは可能ですが、Apache の httpd.conf で mod_proxy が有効になっていることを確認してください。それが完了したら、mod_rewrite と .htaccess を有効にしてからhttpd.conf、このコードを.htaccess以下のDOCUMENT_ROOTディレクトリに配置します。

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.be$ [NC]
RewriteRule ^ http://www.mydomain.nl%{REQUEST_URI} [L,NE,P]

Pプロキシ リクエストの処理に使用されるフラグに注意してください。

フラグの詳細を読む: mod_rewrite の P

于 2013-04-15T09:01:02.320 に答える
4

煩わしさのない別のオプション.htaccessは、Apache をどのように構成できるかに応じて、両方のドメインを同じドキュメント ルートにポイントするか、一方のドメインを他方のドメインのエイリアスとして設定することです。ただし、これには欠点があります。

  • コンテンツ管理システムが絶対 URL を使用している場合、リンクの mydomain.nl をクリックしたユーザーは mydomain.be ドメインに誘導されます (例として、WordPress はこれを行います)。
  • 検索エンジンは、検索結果のさらに下に表示することで、この動作を罰します。少なくとも Google はそうです。重複コンテンツに関する興味深いブログ投稿があります。競合他社についてはわかりません。

Apache 構成の例は次のようになります。

<VirtualHost *:80>
    ServerName mydomain.nl
    ServerAlias mydomain.be

    DocumentRoot /var/www/mydomain.nl/htdocs
</VirtualHost>
于 2013-04-15T09:08:25.003 に答える