Security risks would be involved in running your own server, so you'd need a seperate Linux box so that your main pc would not get damaged should your server get hacked. If you are expecting lots of customers then you would possibly also want a leased line from your phone provider. Finally you would need to submit the IP address to the DNS servers around the world so that ppl's computers can find your website.
In short, you could do it all at home but it would be a lot of hard work (and I haven't even mentioned your responsibility to keep Linux, Apache, PHP et al up to date).