Most preferable one is x10Hosting because they gives good UpTime and allow php mail functions.If you want limited resources with more reliable services you may choose ZYMIC hosting.
Create a hosting account with one of those providers.(you will have to select a sub domain then select anything you like but we’re going to change it.)Now you have hosting and a sub-domain.
Why should you get hosting even you can host from home ??
Because you may not be keeping your computer turned on 24×7 and its costs too much so free hosting is better.
You’d like to have a easy to remember domain not a sub-domain. so you could get one for free on dot.tk orco.cc .(I would prefer dot.tk because they gives easy and fast setup and provide free e-mail forwarding)
Now here is the most important part,you have to tell your domain that from where it have to be hosted.
You can do this from two ways.
First one is to Domain-Forwarding and Second one is Updating Nameserver.
Domain Forwarding is very simple way to replace sub-domains.It would an option “URL or Domain Forwarding” while setting-up the free domain.Just add your sub-domain in it and have fun.
Go to your hosting provider and add your domain to “Parked Domain” or “Custom Domain” then they might give you Nameservers to update in your domain DNS setting.If they don’t so check their FAQs.
Other very simple trick to have a unique ID for a free web is to create Customized Short-link from bit.ly