2011-06-28 17 views
1

私はJoomlaの駆動サイトを使用しています。私はSafariと新しいFirefoxキャッシングリダイレクトに問題があります。ここでは、ユーザーがログインが必要なサイトのページにアクセスするので、$ mainframe-> redirect(loginpage)を使用してログインページにリダイレクトし、そのユーザーのページの$ _GET変数を渡しますもともと訪問しようとしていた。

ログインに成功すると、私のスクリプトは、ユーザーが訪問しようとしていたページにリダイレクトします。 Chromeではこれが問題なく動作し、問題なくリダイレ​​クトされます。 Safariと新しいFirefoxでは、リダイレクトがキャッシュされ、ログイン後に元のページにリダイレクトされず、ログインページにとどまります。元のページの正確なURLをブラウザに入力しても、ログインページにリダイレクトされます。ブラウザのキャッシュをクリアすると、元のページにアクセスできます。

私が理解できない場合は、私が得ることができるすべての助けに感謝してください。ありがとう

答えて

1

私は問題を把握しました。 Joomlaが$ mainframe-> redirect関数で使っていたブラウザ301のリダイレクトのように見えます。私はそれを302リダイレクトに変更しました。これは現在完全に動作しています:-)

+0

301は「移動された」という意味で、ブラウザがこのリダイレクトをキャッシュすることは理解できます。 redirect()メソッドの引数としてTRUEを渡さない限り、Joomla 1.5はデフォルトで303を使用します。 –

0

あなたの説明と同じ問題があります。

joomla 1.5の古いバージョンが必要です。私たちは1.5.11を持っていて301を使用するようにハードコードされています。公式の1.5 apiの文書で1.5.23の最新バージョンを見ると、デフォルトで303コードが使用されています。 303サイトリダイレクトを使用するようにすべてのサイトを変更しています。 303は、リダイレクトされたページを取得するために、常に別のgetを使用するようにブラウザに指示するはずです。あなたの投稿をありがとう!