Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Problems with IE6 / IE7

Hi. I've just installed vanilla forums and it works fine,.. unless somebody uses some version of MS Internet Explorer. After a new post (or discussion) is written with IE the user gets a DNS error, but the written post is saved into the database. Vanilla is hosted on Windows 2003 Server Enterprise Edition, with MySQL 5.0 and PHP 5.2. Any suggestions? On request I can whisper the link to my vanilla test installation! Sincerly yours, Alex

Comments

  • Sounds more like a DNS issue than an issue with Vanilla. Check your network maybe?
  • It only occures with IE. Personally I'm using Opera, and everything works fine with it. The IE problem was discovered by a friend. At first he tought it was a connection problem, so he used the back-button, refreshed and wrote another post. After sending this new post the error occured again. Then he went back to the index and was quite suprissed because both posts were written to the database. After that he informed me about this strange behaviour. Then I tested it with IE6 and IE7 on different computers (in different networks via remote desktop..) and I can reproduce this even on the Server were vanilla is running!
  • Maybe the server isin't handling the redirection properly? What address shows in the URL bar when IE chokes?
  • Hmmm, yeah, I still think it's a DNS issue but Mini might have more experience on this considering this is a Windows Server.

    Do you have any other web-based applications on that server beside Vanilla? If other browsers are behaving normally and only IE is an issue with your server then I'd be lead to believe it could be anything. Given that Vanilla isn't perfect, it would still be a good way to know for sure to see if other apps can reproduce this kind of DNS error behavior on your setup.
  • edited May 2007
    http://*snip*/post.php" But in the properties-Dialog it says "res://ieframe.dll/dnserrordiagoff.htm#http://*snip*/post.php" (So this is the error-Message from IE..) It works fine with Opera 9.20 and Firefox 2.0,.. @leech There are several applications. For example roundcube-webmail, phpMyAdmin, and some other small php Scripts used by a friend.
  • lechlech
    edited May 2007
    And those other applications don't spark these kinds of errors in IE? If not then I'm a bit stumped as to what or why this is happening. Maybe there's a proxy misconfiguration that your server is behind, I can't think of anything else unless someone else can figure it out.

    Also are you running friendly URLs on the Vanilla installation?
  • edited May 2007
    Got no errors reported from the users,.. and just tested an simplemachines Forum (old testinstallation,..) on the server with IE. No such errors,.. Don't using friendly URLs. I'm using IIS to host those things, so no mod_rewrite available. Oh,.. and there is no proxy (as far as I know,.. )
  • Mini might have more experience? Did you mean that? If so I'm afraid to announce that i hate IIS. I do manage a windows server at work but never once have i managed to get IIS to do anything I actually wanted it to...mainly because I want it to run PHP and it quite often doesnt play ball.

    I'm pretty confused about this issue too, to be honest. Has the forum ever worked for IE users? Do you know any IE users who it does work for? Proxy issues dont make sense if it also doesnt work on the localhost because then no proxies should take effect. Is there any chance you could whisper to one of us the forum URL so we can do a bit of investigation ourselves? Can you trigger the same error page with any other sites? (try just for the sake of argument www.lussumo.com/thisdoesntexist.htm)
  • When your browsing to "http://very.strange.behavior/" (Yes, quit obvious that it will not work..) you'll get the same error,.. With "www.lussumo.com/thisdoesntexist.htm" I get the "normal" not-found Page from lussomo.com As said in my 3rd post, with "res://ieframe.dll/dnserrordiagoff.htm" you can call the error page in IE. I whispered WallPhone the URL, and he did some research,.. I whisper it to you too.. He used an test account, but feel free to create a new one. I will unlook it :) > Has the forum ever worked for IE users? Its a fresh installation,..
  • So,.. thank you guys for your help. WallPhone, thanks for your research with ethereal / wireshark.. lech & Minisweeper thank you too,.. And thank you to the guy who mentioned "library/Vanilla/Vanilla.Control.DiscussionForm.php" The problem was the location-header. There was a missing space after the ':', and it was written with 'l'. I modified line 116 and 155. (Replaced 'l' with 'L' and added the space after ':')
  • Mini, I meant it. In a sense that (if memory serves me correctly) you've probably had more experience with server 200x and other Windows based server stuff than I probably have all together. As the last time I recall you were doing stuff on it before I went AWOL. So in that respect your knowledge of any quirks in that area might trump anything I know thus the statement :)

    But I see that WallPhone figured out the error due to a malformed URL which IE was choking on and other browsers were hiding for whatever reason, good find guys :)
  • edited May 2007
    Crazy found the bug. I mearly gave him the data in which he saw a space was missing.

    Just compared output from similar scripts on a IIS server and Apache. Apache (or its version of PHP?) inserts the missing space in the header, but IIS does not. Its apparently a combination of two bugs:
    1. IIS allows you to send malformed HTTP headers.
    2. IE sometimes doesn't know what to do when it recieves the malformed header.

    Fix? Always make sure you have a space whenever you use header('Location: http://example.com/'');

    Other places to fix?
    settings.php line 43 (Strangely, IE redirects OK here)
    categories.php line 22
    appg/settings.php 228 (note that according to HTTP spec, the URL should be absolute, http:// and all)
    library/Framework/Framework.Control.LanguageForm.php 68
    library/Framework/Framework.Control.UpdateCheck.php 59
    library/Vanilla/Vanilla.Control.DiscussionForm.php 115 and 154 (the two troublesome lines in this discussion)
    library/Vanilla/Vanilla.Control.ThemeAndStyleForm.php 164.

    Another thing to check is that GetUrl usually returns & for ampersands in URLs--XML compliant but not for redirections. Fixable by wrapping the result in a str_replace('&', '&', $Url). This isn't checked consistently.
  • Good deal, hopefully Mark will see this. If not file a bug with him so he can bookmark it and add it to the "list-o-fixes". We need a bug tracker :)
This discussion has been closed.