Setting up a website is both very simple, and unexpectedly complicated. However you decide to settup your website, this will be the case, however, any exact steps will depend upon what purpose you have for the site.
If you just want to set up an online store, or a blog, then you don’t need to do anything but sign up for an online service that lets you do that. However, if you want more control over the content, design, and back-end, you will need to go through the steps of finding a host, registering a domain, “parking” your domain with your host, and uploading code that works and displays correctly across browsers. I will try to go through these various steps and contingencies for you, but most details will vary with your host, website idea, and programming language.
If you want to set up an online shop without bothering too much about the technical details, check out www.shopify.com. It doesn’t get much easier than that. Very customizable; you can use your own domain, and all the important stuff is very easy to implement.
For a simple blog, try www.posterous.com, www.wordpress.com, or www.blogger.com.
Even for these two easy “get-er-dun” options, you will probably want your own domain. The way I register domains is by typing my domain in the address bar to see if it is taken. If it is, then I try something else. If it is taken by one of those ad lists that says something like “what you want, when you want it,” then look for a link on there that says something like “inquire about this domain.” then you can start a correspondence with that organization or individual that usually ends in you paying an exhorbitant price for the domain. If you don’t need that specific domain that badly, keep typing candidates into the address bar until you get one that looks like a broken link. Then you know you’ve got a good candidate. Then you move on to actually registering the domain.
Before I get into registering however, I feel I need to respond to possible objections to the method described above. The reason I wouldn’t just test domain names in a domain name registration company’s availability search is that, if it is taken, they will register the hit and buy up related names. Also, if you aren’t prepared to buy the domain right away and you search it through the regstration company’s website and it’s available, it will mysteriously not be available the next day. I’m sure everyone will deny this, but I can’t even say how many times this has happened to me.
Anyway, back to business. When you have found a name that seems to be available, and you’re ready to spend a little money to register it, go to a domain registration company’s website like godaddy.com or google domains. You can also register/search a domain with most web hosts. An untaken domain should not cost more than $20 a year in most cases, and will often cost less than $10 a year to keep it registered. Once you search for the domain on a registration service website, the checkout process will guide you fairly obviously through the buying process.
The next step is to find a hosting service. I will not even begin to intelligently recommend any because there are so many, but I can tell you some general principles to consider and some of the ones that I have found to be reliable. If you are making a website in order to figure out how to make a website, then try to find a host with a free plan, just so you can host some files and get them to resemble a website. Other things to look for are uptime (although this is almost always 99.9% anyway), scalability, and costumer service. Customer service is by far the most important, especially if you plan to be doing some more sophistocated programming, as you will need their permission and proabably their help to install things on the server, a practice that is usually not allowed by most hosts without some kind of enterprise plan. Fo rmy personal site, I have used Hostultra.com for several years, and have never had any problems. they are unremarkable, but did help me get started back when I didn’t know anythign about this stuff. Since then I have also used Rackspace.com and mediatemple.com, both of which are more geared toward scalable internet applications (cloud computing), and enterprise plans.
Once you have a host and have purchased/registered for a plan, you will have to play around with your host’s GUI to find your “Cpanel.” Your Cpanel is where you upload files and manage your filestructure. There are other ways to interact with your serverspace via a command line, or some graphical FTP (File Transfer Protocol) client, but Cpanel will probably be the best. Also, one thing that bothered me about Cpanel when I first used it is that its GUI works very differently from a normal, “user friendly” PC/Mac interface. Clicking icons sometimes means something different from clicking the words right next to them. Just be aware that these quirks exist and experiment with them to figure things out. Also, here is a good guide to using a host/Cpanel.
To create files to use on your website, all you really need is a text editor. One actually comes with your Mac. It’s called TextEdit, and you can easily save things as .html, .php, .css. However, it will probably be more pleasant to code in an environment that supports tabbed file browsing, code-folding, viewing your file system, and autocomplete for your code-writing. For a great beginner’s IDE (integrated development environment), try Dreamweaver, but don’t stick with it for long or you’ll be incredibly lazy, in my opinion. Also, Dreamweaver costs a lot of money. If you plan to write code without a visual editor, go with a great free option: Komodo Edit.
Some great tutorials on how to make websites can be found at http://www.maconstateit.net/tutorials/. This series of tutorials is for the absolute beginner, and is great for easing into the concepts involved and picking up some basic tools. From there, go with google searches and coding forums. Idreamincode.com, stackoverflow.com and codingforums.com are good forums. Nettuts.com, tutlist.com and ajaxian.com are all good places to find tutorials, but there are literally hundreds, if not thousands of different places to find tutorials. Just keep looking, and you’ll figure out how to do almost anything you can dream up.
When you’re done with your first page, load it into your public/html folder and name it index.html. Go to your domain name in your browser, and there it should be.
For more details on parking your domain and such, try this tutorial. There are dozens of good tutorials in this vein, but this one should suit your purposes as a beginner.
All this may seem complicated, but like I said earlier, it’s only as complicated as you allow it to seem to yourself. The steps are really quite simple: make an html page, host it, associate it with a domain name. There are just a lot of details to work through in order to make it actually work. Don’t be discouraged by these details and tedia; the first website I made took me more than 13 hours to get working. I had no guidance, and was taking way to long with simple junk I was afraid to confront. But I did not give up and was able to see how simple it all really was. For some encouragement: the founders of Fluther didn’t know anything about programming or web design when they decided to make Fluther, but they kept at it and they now have arguably the best question and answer site on the internet, and have even been funded, so they can now focus on the site as a business. There is no magic in the world, just a lot of details necessary to realise what is ultimately very simple to accomplish. Keep at it, and Good Luck!