この質問はおそらく答えられているが、私は適切な解決策を見つけることができない。.htaccess 301ディレクトリ内のすべてのページをクエリーコードなしで他のドメインにリダイレクト
私は301がそうのように、新しいドメインに
http://www.domain1.com/nl/dolor/sith
http://www.domain1.com/nl/loremipsum
http://www.domain1.com/nl
下記のようなすべてのページをリダイレクトすると同時に、クエリ文字列をドロップしたいと思います:
http://www.domain2.nl
他のすべてのページ、例えばhttp://www.domain1.com/be/loremipsumはまだ動作するはずです。接尾辞がnl
のものだけがリダイレクトされます。
これらは実際のディレクトリではないことに注意してください:私の.htaccessファイルに私は、クエリ文字列を書き換えるために、次の文を持っている:
# Personal Rewrites
RewriteRule ^([A-Za-z0-9-_]+)/?$ index.php?lid=$1 [L]
RewriteRule ^([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ index.php?lid=$1&pl1=$2 [L]
RewriteRule ^([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ index.php?lid=$1&pl1=$2&pl2=$3 [L]
RewriteRule ^([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ index.php?lid=$1&pl1=$2&pl2=$3&pl3=$4 [L]
RewriteRule ^([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ index.php?lid=$1&pl1=$2&pl2=$3&pl3=$4&pl4=$5 [L]
RewriteRule ^([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ index.php?lid=$1&pl1=$2&pl2=$3&pl3=$4&pl4=$5&pl5=$6 [L]
私は伝統的な書き換えを試してみたが、これはまた、送信クエリ文字列:
Redirect 301 /nl http://www.domain2.nl
その他の手法は動作していないようです。そして、私は正規表現に堪えません...
誰かがフィッティングの解決策を教えてくれますか?事前に感謝します
ブーム!あなたは勝つ!これは魅力のように機能します。また、あなたの提案通りに '[A-Za-z0-9 -_]'を '[\ w-]'に置き換えました。どうもありがとう!まもなく私は '/?return = link'(セカンダリクエリーストリング)のような構造を、この場合に表示されるリライト構造と組み合わせて使う方法についてもう一度質問します。多分あなたはそこでも助けることができますか? :-) – maartenmachiels
あなたは喜んで、うまくいきました。新しい質問のためにここのコメントに質問のリンクを残してください。私は確かに自分のレベルを試してみます。 – anubhava
申し訳ありませんが、私の恩恵をあなたに与えることを忘れました:-) – maartenmachiels