Comments (18)
What do you actually get back?
There are some types of errors that it cannot handle, especially errors that occur after the response headers have been sent. In these cases it usually throws an exception trying to display the error page because the response is not in a state that will allow it. Listening for first-chance exceptions in the debugger will always be more reliable.
from diagnostics.
When triggering an exception in an MVC action (catchable with action filters) and error page options being all on I get an empty response. I am running on mono with the nowin server.
from diagnostics.
Can you repro the issue on .NET 4.5 or CoreCLR, using Helios or WebListener?
from diagnostics.
I do not personally have access to Windows right now. However I have heard that this issue happens only on Mono (it is why I have observed it).
from diagnostics.
What response status code and headers do you get back?
from diagnostics.
I get an HTTP 500 i.e. Internal Server Error. There is only one header "Content-Length: 0". This is with all ErrorPageOptions turned on.
from diagnostics.
Does this sample work for you?
https://github.com/aspnet/Diagnostics/blob/dev/samples/ErrorPageSample/Startup.cs
from diagnostics.
The same result as before is obtained ie. A content length of 0 with status code 500.
from diagnostics.
Ok, one more thing: Try running Kestrel on Mono.
from diagnostics.
Last time I checked it does not work on Linux(it is what I have).
from diagnostics.
Kestrel is supposed to work on Mono at the moment.
from diagnostics.
On both OSX and Linux.
from diagnostics.
Kestrel loads a Mac specific binary on all Unix style operating systems. That will blow up on linux. mac binaries are not linux binaries. Kestrel needs to let Linux load libuv from the system directories. I tried to file an issue but it fell on deaf ears.
from diagnostics.
After installing libuv..running kestrel yields:
System.NullReferenceException: Object reference not set to an instance of an object
at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.loop_size () [0x00000] in <filename unknown>:0
at Microsoft.AspNet.Server.Kestrel.Networking.UvLoopHandle.Init (Microsoft.AspNet.Server.Kestrel.Networking.Libuv uv) [0x00000] in <filename unknown>:0
at Microsoft.AspNet.Server.Kestrel.KestrelThread.ThreadStart (System.Object parameter) [0x00000] in <filename unknown>:0
So it does not work on Linux as some advertise
from diagnostics.
Same problem ubuntu 14.04, hope they decide to listen:
System.NullReferenceException: Object reference not set to an instance of an object
at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.loop_size () [0x00000] in :0
at Microsoft.AspNet.Server.Kestrel.Networking.UvLoopHandle.Init (Microsoft.AspNet.Server.Kestrel.Networking.Libuv uv) [0x00000] in :0
at Microsoft.AspNet.Server.Kestrel.KestrelThread.ThreadStart (System.Object parameter) [0x00000] in :0
from diagnostics.
I assume your were talking about this part:
if (Libuv.IsWindows)
{
var architecture = IntPtr.Size == 4
? "x86"
: "amd64";
libraryPath = Path.Combine(
libraryPath,
"native",
"windows",
architecture,
"libuv.dll");
}
else
{
libraryPath = Path.Combine(
libraryPath,
"native",
"darwin",
"universal",
"libuv.dylib");
}
from diagnostics.
I got Kestrel to load using the solution found on this page: http://carolynvanslyck.com/blog/2014/09/dotnet-vnext-impressions/
from diagnostics.
This issue was fixed in Error page on mono long back. This can be closed.
from diagnostics.
Related Issues (20)
- Revisit health check logging HOT 3
- Alive check, readiness check... where is the busy check? HOT 3
- UseDeveloperExceptionJson middelware HOT 1
- UseStatusCodePagesWithReExecute behaves differently in 2.1.x (migration from 1.1.x) HOT 8
- Health Check service should not catch exceptions caused by cancellation HOT 1
- Cache headers HOT 2
- Add support for push-based health checks HOT 7
- [Feature request] HealthCheckResult and health checks execution time HOT 6
- Development in both Windows and Mac HOT 1
- Configuration of the health check option ResultStatusCodes HOT 1
- In Preview3 IHealthCheck doesn't seem to be able to return granular HealthStatus HOT 3
- Consider changing the option name related to cache headers
- Nested paths screw up health check filters HOT 4
- Multiple health check endpoints HOT 3
- Consider changing HealthStatus HOT 8
- Cannot configure multiple paths over same custom port HOT 2
- Ability to throttle calls to IHealthCheck HOT 3
- ArgumentNullException when not setting Name in IHealthCheck HOT 2
- JsonResponseWriter in Health checks assembly HOT 2
- Did something change when registering health checks in preview3? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from diagnostics.