I remember I spent ages trying to find a free host. Basically, I wanted one with a fair amount of space, no ads and stuff like PHP, etc. But all of the ones that had no ads had other restrictions like hardly any space, etc.
So in the end, I found that the best way to get everything I wanted was to use paid hosting (the phrase "You get what you pay for" springs to mind). It's not a lot of money - you can get hosts for $20 a year - and you don't end up with a crappy URL either.