I'am a programmer but I'am not really advanced in servers and hosting stuff.<p>I'am afraid if I start a big web app I will not know how to scale since I do not know anything about servers and stuff like that.
so where I can start learning about this stuff ?
You learn by doing, reading tutorials on the internet, by asking questions on StackOverflow and by making mistakes. Start out small with some basic web hosting, or play around with a VPS. Get comfortable with using Linux. Or tinker around with Amazon Web Services (free for the first year!)But really, don't worry about scaling too much. You don't just start a big web app, even Facebook took a couple of years to get to a size where they had to worry about scaling.
I agree with dirkdeman, you can't start a big web app overnight - you start small and learn by doing. Try deploying on a VPS and when you get stuck, you can ask <a href="http://serverfault.com" rel="nofollow">http://serverfault.com</a>. Also I would recommend checking <a href="http://debian-handbook.info/" rel="nofollow">http://debian-handbook.info/</a> for reference (if you're going to deploy a debian based distribution). Good luck!
Just do it, + google. I can't think of any better way. If you're leaning towards Red Hat/CentOS, then an RHEL Certification book will fill in a lot of knowlege holes. Always keep a Amazon AWS micro-instance or a local Linux server to mess around on.