tl;dr: This is a basic guide on how to set up your own free webiste. Hello, Brian here! I just wanted to get this out there for you all to see and experiment with: If you are connected to the internet(preferably wired via ethernet, etc.), then you could host your own website for FREE. As long as your ISP(Internet Service Provider) does not block port 80, you can do this. I figured this out about 2 years ago through trial and error, and many experiments on my part. The final result of that 2 years is this(not so creative) website: http://redsandbox.no-ip.org/ You may notice the .no-ip.org. Why is that there? Isn't http://no-ip.org/ it's own website? Well, yes, it is, and I recommend you try it out! It allows you to assign a "domain", or a word that translates to a webpage(like www.google.com is "google") so that users don't have to remember ridiculous numbers, or ip addresses, like http://188.8.131.52/ ! You'd also need some host software to run on the computer in question, or the "server" of your website. I used to use http://www.keyfocus.net/ as my server, but a more common(but slightly harder to set up) server to use is apache. I eventually ended up making my own server software using Java. There are many server softwares out there to choose from, even an OS, like Microsoft Windows Server 2008! The only drawback to using an OS is that you'll probably pay money for that, and the goal here is FREE. So, let's see how I was able to "magically" host my own website! A couple of things to note first, however, is that there are a few drawbacks to connecting your personal computer to the internet: Hackers. Hackers could potentially gain access to your personal data, depending on the hacker, the server software you use, the directory in which you host the server's files(i.e. if you chose your C:\ drive as your "htdocs" folder, that would be pretty dumb.) Website availability: If you turn your PC off, and it was hosting the server, well guess what? Your server was turned off right along the rest of your computer! Because your PC needs to be on for your server to work, you'd need to leave your computer on ALL the time. You might think, "Well, what's the harm in that?" Well, leaving any device on for an extended time can cause it to malfunction, become slow, hot, or break altogether. In fact, it is one of the main reasons that computers die! You should choose a "break" schedule for your PC, even if you decide not to make your own website, like turning your PC off before bed, or before work, school, etc. At the very least, make sure it has proper cooling and is restarted every so often. Now, let's look at how I set up my website: 1. Obtain your external IP. I checked http://canyouseeme.org/ for my external ip address, or the address that anyone on the internet would use to see your house's or business' main router. "What's a router", you ask? Google is your friend. Your router allows anything from wireless laptops, tablets, etc. to ethernet-tethered desktops to connect to that magical thing that everyone seems to be in love with - the internet. 2. Choose your server software. With that ip written down, I looked around for some server software. As I mentioned earlier, I went with KeyFocus, because at the time I was not as computer-savvy as I am now. I was too lazy to grab and install Apache(even though it seemed to run just as well), and KeyFocus was great, but I needed more functionality, so I ended up making my own server software in Java. You'd probably be better off if you start with Apache. 3. Learn HTML. Once I learned some HTML language(the code that your browser is reading right now), I wrote a simple document with text and an image off to the side. Once I became more familiar with HTML(http://www.w3schools.com/ is an awesome site to have a look at for learning more), I began embedding anything from YouTube videos to music(password protected music, otherwise you're pirating!) to even a PHP forum, much like this one! 4. Make an attractive website! Now, this one I really can't help you with(just look at my website, lol). However, there are many sources you can look up and learn from to get that "ooh, look at this!" response from your users. I'm not saying copy someone - be unique! Create your own theme! You could even make your own computer font and upload it to the internet, if you are capable enough! Later, I will link you guys a page on my website on how to do just that, once I've made it. 5. Add some custom MUSIC to your webpage. This step isn't required, but the amount of websites out there(mine included) that don't have some kind of nice background or toggle-able music is appalling! Now, I understand that using music would probably drive certain users away, creating a biased community, but you could consider at least some kind of "universal" music. Again, google is your friend.(Also try out DuckDuckGo! Just a suggestion...). That way you could have that memorable jingle that all the commercials on TV seem to chuck in our face. Not having one, however, would be perfectly fine. But it's worth the ol' think-about. 6. Port-forward your router! This is a critical step. What this does is basically forwards the port that your website uses(generally :80) to the external ip that I mentioned earlier so that users from over the internet can successfully connect to your website and view it! Since not everyone has the same router in their building, you'll need to look up the instructions for your router from their site. For example, the brand of my router is Cisco, and it is a "Linksys E2000". So what I would look up on google would be something like: "Cisco Linksys E2000 port fowarding instructions", which would probably bring you here and then here. Once you've successfully port-forwarded TCP port 80, you're ready for step 7! EDIT: I forgot to include that your host machine will need to have a static ip address so that your router will be able to port forward your port 80 to the interwebs. Check out Portforward Static IP to do just that, then make sure that you set up the same local machine ip address with your router. 7. Check your website over the internet. You could probably check your website on the PC that you run it on by going to http://127.0.0.1/ in your browser, but what good is that to anyone hoping to view your webpage? 127.0.0.1 is computer language for "local machine", so that would only direct the average user to a blank page or a 404 error. To check your webpage from over the 'real' internet, go to http://canyouseeme.org/ , write down the external ip that it gives you, and go somewhere public with an internet connection, like your local public library, your school, workplace, a coffee shop with some WIFI, etc. Then type in the external ip like this: http://your.number.goes.here/ If you get the webpage you worked hard on, then congrats! But, do you really like the number-only ip address of your website? If you do, then you're done. But, if not, then you'll probably want to head on over to step 8. 8. Create a free domain! You can search google for any free dns domain site, but I use no-ip.org for my website. Following their instructions, I downloaded their DNS client manager, which tells no-ip.org that "Hey! http://184.108.40.206/ should be translated as http://redsandbox.no-ip.org/ !". That is probably what you would want to do. Once you've set that up, and no-ip.org is working over the internet with your site, you've completely set up your own FREE website, no money or "scammy commercial websites" necessary! I wish you luck in this regard, and have a nice day! I hope to see some links to some websites created by readers of this post!