[coldbox-5.3.0] Colon in URL causes Renderer error

system\web\Renderer.cfc throws an error in locateModuleLayout() when there’s a colon in a malformed URL. Ex.: /index.cfm/this.is:bad

Would rather have the onInvalidEvent be raised.

Have I not set up my config correctly?

modules = {
include = [“cbstorages”],

exclude = [“HTMLHelper”]

};

Is this URL rewrite rule wrong?

Thanks,

Chris Gulla

Your config and rewrites look fine. Where is the malformed URL being generated? That is the problem as a colon isn’t even a legal character in a URL.

The router is looking for patterns, when the inbound URL is detected, when it sees an event pattern ( e.g. Module:handler.action ), it attempts to fire that. In your case, it’s looking for a module named this.is with a handler of bad and an action of index and… boom.

My suggestion would be to fix the inbound URL’s or catch that in your error handling method, if you have an expectation that bad URLs like that will be common.

HTH,

Jon

Thanks Jon. I get a lot of bad requests from hackers, bots, etc., most of them attempting to break a PHP server. One came in the other day with a :slight_smile: at the end of the URL. I know that any valid URL in our system will not ever have a colon, so I’ll try and use IIS request filtering to deal with it. Head off the request before CF gets involved.

Thanks,
Chris