Cache needs to handle external URLs better...