I'm trying to implement this accepted solution for displaying a custom error message:
https://stackoverflow.com/a/5229581/141172
However, IE9 always displays a generic 500 error message with this solution. Google Chrome displays my custom error message.
Making this change:
Response.StatusCode = 200; // don't return: 500
causes the intended behavior in IE9 and Chrome.
However, it does not seem at all reasonable to change the HTTP status code just to make this work in IE9 (for one, website monitoring solutions would not see the 500 if things fail).
How can I add custom error handling in a manner that will work across all browsers, without changing the HTTP status code?
Apparently, IE will ignore a custom error page if it's smaller than 512 bytes. The workaround is to ensure the page has at least 513bytes of data. Also, if you're using gzip compression, it must be more than 512 bytes AFTER compression.
Related
When a site receives high traffic, the tab in Mozilla Firefox stops loading and displays this error message "PR_CONNECT_RESET_ERROR" as shown in screen shot.
What I want is, the tab should continuously keep loading until it receives the response from the site's server without displaying this error or I want to increase the duration(time or number) for which it keeps trying to connect to that site's server by default.
I don't know whether it is possible or not but what I tried is, I changed some of the configurations from about:config. I increased network.http.keep-alive.timeout from 120 to 215 and network.http.max-persistent-connections-per-server from 6 to 20. But I don't find any noticeable change.
Are there better possibilities for achieving my expectations ?
Note: I approximately make 30-40 requests to same url(www.example.com) from different tabs with different sessions.
Getting a 416 error when trying to GET a website with HTTParty. Works just fine in the browser.
I have never gotten this error before, so I went online and found this:
It occurs when the server is unable to fulfill the request. This may
be, for example, because the client asked for the 800th-900th bytes of
a document, but the document is only 200 bytes long.
The request includes a Range request-header field, and not any of the
range-specifier values in this field overlaps the current extent of
the selected resource, and also the request does not include an
If-Range request-header field.
Wondering if anyone has gotten 416 with HTTParty before and if there is a way to prevent this form happening. Thanks
Example website where error occurs:
http://www.bizjournals.com/jacksonville/blog/morning-edition/2014/07/teens-make-up-less-of-summer-workforce-than-ever.html
It appears that bizjournals is able to detect you are a bot (not accessing in the browser) and therefore returns a 416.
irb(main):005:0> HTTParty.get('http://www.bizjournals.com/jacksonville/blog/morning-edition/2014/07/teens-make-up-less-of-summer-workforce-than-ever.html').body
=> "........As you were browsing <strong>http://www.bizjournals.com</strong> something about your browser made us think you were a bot. There are a few reasons this might happen........"
You could either ask bizjournals to allow you to make requests or try to change the headers to make bizjournals think you are not a bot.
In the firebug i can see all xmlHttprequests if i check the it in the console options like this
But my site has many js files like 40 and i have to scroll down to see if i get any ajax error in get in red color.
Is there any way to just get those error only.
I tried javascript errors but dont catch any erorr in GET request
That may not answer exactly to your needs, but here is how I usually proceed.
Use the Net panel, and use the "XHR" filter, and then sort by "status".
Every requests that have a status >= 400 have failed. Also see http://en.wikipedia.org/wiki/List_of_HTTP_status_codes
Thus every XHR errors are gathered at the bottom.
Florent
I have a Classic ASP/VBScript site running on IIS 6, and a program called SmarterStats (found via an earlier question) providing various stats and info from the server logs. This is an internal site, and we do use integrated authentication (AUTH_TYPE = Negotiate).
I'm looking at the report on response codes, and it says that in the last 7 days there have been 255 responses with a 5xx error code... naturally not the most useful stat I could get back.
I have a custom error page for 500 and 500.100 errors that logs the specifics for me to follow up on - and that log is virtually empty. I've tested with an intentionally broken page, and a standard user account, and it is working as expected - custom message, log entry made. (and checked with "friendly error messages" on and off - works either way)
The only entry I have in the log is a single entry for an error -2147024843 (authentication related, took too long to get a response), and that's it... what other errors could be happening and how can I find/track them?
Should I route all the different types of 5xx errors through my custom page? Or is there something else I should be doing?
Resolution: I'm going to go with running all 5xx errors through the custom page. For reasons that leave me totally baffled, the errors have stopped... I've not changed anything, no one has changed anything on that server - but the errors have stopped. Go figure.
It seems like logging all 5xx errors via your custom page might be a good idea. Your logging seems to be working, but SmarterStats seems like it might be giving you bogus data?
What version of SmarterStats are you using?
My hosting provider has Version 5.2 and I can see a detailed list of which pages have produced a 5xx error by going to Report Items > Server Responses > 5xx - Server Errors in the navigation tree. The report that gets displayed has a table listing the pages that have produced the error codes so you can then go investigate those pages to see what may be causing the error.
Depending on your site the error might be perfectly normal, for example I have some custom HTTP handlers which implement a standardised HTTP protocol which actually specifies that 5xx errors should be thrown under certain circumstances.
Though this shouldn't apply to an internal only site on public websites it is sometimes the case that badly written crawlers will access your pages in such a way as to produce an error
I'm getting some js errors only for some users, and only every once in a while on a page that uses quite a bit of ASP.NET AJAX.
The page also does some intense SQL querying and some string manipulation to highlight text found in the search results.
Could this be a result of performance? Is it always safe to use ASP.NET AJAX in demanding situations or should I be looking to other AJAX techniques?
(By the way the errors I sometime see are):
Message: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 12031
Message: Sys.WebForms.PageRequestManagerParserErrorException: The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.
Details: Error parsing near ' '.
ASP.NET AJAX has been known to not be the most performance intensive approach, but that's what you got i suppose in exchange for how simple it is to implement.
I do know you aren't allowed to do any Response.Writes within an update panel. That will cause your second error.
This particular exception is very
common and can be caused by any one of
the following:
1. Calls to Response.Write():
By calling Response.Write() directly you are bypassing the normal
rendering mechanism of ASP.NET
controls. The bits you write are going
straight out to the client without
further processing (well, mostly...).
This means that UpdatePanel can't
encode the data in its special format.
2. Response filters:
Similar to Response.Write(), response filters can change the
rendering in such a way that the
UpdatePanel won't know.
3. HttpModules:
Again, the same deal as Response.Write() and response filters.
4. Server trace is enabled:
If I were going to implement trace again, I'd do it differently.
Trace is effectively written out using
Response.Write(), and as such messes
up the special format that we use for
UpdatePanel.
5. Calls to Server.Transfer():
Unfortunately, there's no way to detect that Server.Transfer() was
called. This means that UpdatePanel
can't do anything intelligent when
someone calls Server.Transfer(). The
response sent back to the client is
the HTML markup from the page to which
you transferred. Since its HTML and
not the special format, it can't be
parsed, and you get the error.
Complete Post : ASP.NET AJAX and Sys.Webforms.PageRequestManagerServerErrorException
You can grab the code which causes the error by using Visual Studio Debug feature. I don't know much but maybe it can help and also Firebug will help you to see server response and data you submit to the server.
Here is a video where you can see how to use Firebug to debug Ajax.
See how I used Firebug to learn jQuery
But I don't think Asp.NET Ajax should be avoided in heavy loaded pages. That is actually what Ajax stands for right ? I mean it also relieves servers to send small pieces of pages instead of requesting the whole page again.