私は現在、ワニス内にペイウォールを実装しています。特定の状況下で、ワニスを介してリダイレクトを送信しています。
sub process_request {
if (req.http.count ~ "5") {
error 302;
}
}
対応するエラーサブルーチンでは、次のようにリダイレクトしています。
sub paywall_redirect {
if (obj.status == 302 && req.http.count ~ "5") {
set obj.http.Location = "http://www.google.com/";
}
}
幸いなことにロジックは機能しますが、残念ながら、google.comにリダイレクトされる前に使用されていたドメインのブラウザ履歴が失われています。
www.paid-content.com/article.html
新しいタブを作成し、読みたい特定の記事のために開いて、カウンターの制限を超えたとしましょう(たとえば、ページをリロードすることによって)。次に、にリダイレクトされwww.google.com
、ブラウザの戻るボタンが無効になります。
www.website.com
私が制限から来て制限を超えていると仮定するとwww.paid-content.com/article.html
、戻るボタンでに戻りますwww.website.com
。
この動作はこのように意図されていますか?ブラウザの履歴を保持するには、ニス内でどのようにリダイレクトする必要がありますか?
ご協力いただきありがとうございます!:)