web-dev-qa-db-ja.com

.htaccessを使用してCookieと301リダイレクトを設定する

私は現在。htaccessにあります:

RewriteRule ^$ http://chfmaine.com/ [CO=moved:yes:chfmaine.com:1/,R=301,NE,NC,L]

私は この投稿を基にして でした。

それは私が必要とする以上のことですが、クッキーの設定は同じでなければなりません。 Cookieのドメイン部分を誤解しているのかもしれません。 CHFmaine.comに設定した場合、動作するはずではありませんか?

301の後にCookieを追加しようとしました。301が機能するようにEtherが機能しますが、Cookieは渡されません。これはmaine-horse-trails.comからchfmaine.comにリダイレクトしています。古いサイトにあったすべての異なるページに、これらのうち23個があります。この.htaccessに到着するものはすべてリダイレクトされ、Cookieを設定する必要があります。したがって、最初にCookieを誰かに渡す方法がある場合は、一致する書き換えに進みます。しかし、この方法で機能するようになれば、コピーアンドペーストを使用してすべての可能性を実現できます。 URLにクエリを渡したくありません。

私の質問は、ここで何が間違っているのですか?リダイレクトの成功後にこのCookieが見つからないのはなぜですか?そして、より良いオプションはありますか?

4
JpaytonWPD

Cookieは設定されないため、リダイレクト後にCookieを見つけることができません。 Apacheでは、PHPまたはその他のコードが実行される前に、再修正が行われます。

PHPリダイレクトを使用できます。たとえば、ページにアクセスしてCookieを設定し、リダイレクトします。

詳細については、この質問を参照してください。 https://stackoverflow.com/questions/612034/how-can-i-set-a-cookie-and-then-redirect-in-php

また、Cookieはドメイン固有です。あるサイトでCookieを設定した場合、次のサイトに持ち越されません。 Cookieの使用目的によっては、$ _ GETの方が適している場合があります。

3
EPICWebDesign