« Previous topic | Next topic »  
Reply to topic  
 First unread post  | 22 posts | 
by philw on Sat Jul 26, 2008 6:27 am
User avatar
philw
Forum Contributor
Posts: 478
Joined: 27 Jan 2005
Location: uk
The POST/GET thing is an HTTP issue not a browser one. Here's the relevant section of the standard. Essentially browsers must not cache the results of POST requests. Hence the request must be re-POSTed each time you hit the page (by pressing "back" here), which is what the prompt is asking you to confirm. The PHPBB use of POST is causing the message as described above.

The confirmation message is a browser-issue. Section 9.1.1 of RFC 2616 states:
In particular, the convention has been established that the GET and HEAD methods SHOULD NOT have the significance of taking an action other than retrieval. These methods ought to be considered "safe". This allows user agents to represent other methods, such as POST, PUT and DELETE, in a special way, so that the user is made aware of the fact that a possibly unsafe action is being requested.
[/quote]
Making the user aware of the fact that a possibly unsafe action is being requested is precisely what all the browsers I tested and listed above are doing. Of course there's no safety issue in this specific case, but the browsers don't know that and so they must behave as I described.

If you have a copy of FireFox or any other browser which does not behave in this way, then I guess it's broken. I checked Bugzilla and there are no reports of such a defect I can find there.

Summary: switching between one current browser and another won't help you here.
 

by Royce Howland on Sat Jul 26, 2008 4:42 pm
User avatar
Royce Howland
Forum Contributor
Posts: 11719
Joined: 12 Jan 2005
Location: Calgary, Alberta
Member #:00460
Phil, there may be more going on here than I'm not seeing, but my earlier statements were not guesses, they were the result of testing the different browsers I've got installed on my machines. The scenarios I outlined are the real behaviors I observed.

Today I did some more tests with older versions of browsers already tested, and even an obsolete browser that's no longer supported (the original Mozilla). Results are consistent with what I outlined previously.
  • All versions of all Mozilla organization browsers I have do not generate the "page expired" warning on my machines. This includes Firefox 3.0.1, 3.0, 2.0.0.14 and 1.5; SeaMonkey 1.1.11, and Mozilla 1.7.13. I have more older versions of these, but testing them seems pointless because the behavior is obviously consistent dating back several years.
  • Opera 9.51 also does not generate the warning.
  • IE 6 and 7 both generate the page expired warning.
  • Safari 3.1.2 also generates the warning; but its implementation requires fewer clicks to refresh than page than is the case with IE, basically 1 click instead of 3 as with IE. So Safari is a bit less annoying in this case while still correctly implementing the RFC in question.
So far I have not found any settings in any of these browsers that appear to affect the behavior of the back button in the case of POST functions, or the caching of POST-ed pages. So I infer the behaviors I'm seeing are relatively hardwired design decisions by the various browser development teams. Especially considering the consistent behavior of all Mozilla organization browsers dating back to Mozilla.

I can't tell for sure whether you have tested Firefox yourself under one of the above situations and get "page expired" warnings consistent with IE. I'd be curious to know what specific sequence of actions you can do that produces the warning with Firefox, because so far I haven't found one...
Royce Howland
 

Display posts from previous:  Sort by:  
22 posts | 
  

Powered by phpBB® Forum Software © phpBB Group