This will actually cause a 500 error instead of a 404. I think keeping `abort` is the right thing to do in terms of HTTP protocol, especially since you can deduce which piece is missing from the URL.