I don't know whether your post is classified as advertising or not.
Nevertheless I'll take my time to answer it.
It's very very difficult to find a 100% free webhosting with features like server-side scripting support, database support and more space than 10 or 20 MB. I searched for a long, long time and couldn't find one.
The problem is even free webhost providers have some kind of catch: they either provide ads on the site and/or impose file size limits, usually disable FTP access, usually do not allow files other than HTML or images and place *severe* restrictions on bandwidth.
If you want a personal home page, then you can make do with free providers. If you want (as I suspect) more support like FTP, Database, PHP/Perl and lots of space and bandwidth, you must go for a paid hosting.
There are a lot of low cost, full featured hosting providers. A search on google will get you heaps.
Do a lot of homework before you select a webhost:
- Disk space offered (in MB).
- Bandwidth offered per month.
- Type of server which will host you site and if possible, the machine specs.
- Support for things like subdomain names, number of e-mail IDs with POP/web access.
- Easy administration tool for your site.
- Which version of Apache and what OS it runs on (Unix, BSD or Linux).
- Whether database support is provided and if so, are there any limits (check for PHP/Perl/MySQL support if you want Apache web server).
- What is the uptime they claim to have?
- Whether they offer e-mail support.
- Whether they have SSL support (important for e-commerce or stores).
- If possible find out the connection speed (very difficult. But try finding from their pre-sales staff by e-mailing them).
- Read their terms and conditions carefully