0

古いサイトを新しいドメインに移動しましたが、Google にはまだ以前のリンクが表示されているため、htaccess ファイルを作成して 301 リダイレクトを作成しました。以下は私のhtaccessコードです:

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

古いURLを新しいURLにリダイレクトしていますが、ページごとにリダイレクトしていません。www.old.com/about.php に行くと、www.new.com/ にリダイレクトされますが、www.new.com/about.php を表示したいという意味です。

最小限の作業で適切な正規表現を使用してこれを行う方法を提案できますか?

4

2 に答える 2

1

これにより、クエリ文字列とリクエストパスのすべてが維持されます。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^old.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.old.com$
RewriteRule ^(.*)$ http://new.com/$1 [R=301,L,QSA]
于 2012-05-09T05:28:41.580 に答える
1

mod_rewrite を使用する必要はまったくありません。単純に使用します:

<VirtualHost *:80>
    ServerName old.com
    ServerAlias www.old.com
    Redirect permanent / http://new.com/
</VirtualHost>

Redirectディレクティブは、/.

于 2012-05-09T05:28:45.037 に答える