1

このコードは正常に動作しています:

RewriteEngine On
RewriteBase /my/project/dir/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /my/project/dir/index.php?uri=$1 [QSA,L]

www.しかし今は、URL 内での回避duplicate content(SEO)を強制したいと考えています。このコード スニペットを見つけましたが、コードに統合できません。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.domain\.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]

いくつかの組み合わせを試しましたが、混乱させたくありません。それらのどれも機能していませんでした。

目標を達成するために、最初の (動作する) コード行をどのように拡張しますか? 前もって感謝します!

4

1 に答える 1

1

ルールの順序を変更し%{REQUEST_URI}、301 ルールで使用します。

RewriteEngine On
RewriteBase /my/project/dir/

RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC]
RewriteRule ^ http://www.domain.com%{REQUEST_URI} [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /my/project/dir/index.php?uri=$1 [QSA,L]
于 2013-10-25T17:52:54.440 に答える