midiwhale wrote:Sorry have I missed a bit?
To map your (Internet) domain name (or sub domain) to your home PC running XAMPP, presumably you just point the domain name at the IP address of your machine?
If you're using sub folders (sub domains) presumably you just add the sub folder to the IP address?
Is that correct?
Sorry, I am new/wasn't here when this was posted, but maybe it can help somebody...
...there is a bit more involved if you want to make your domain name point to your home PC so everyone on the Internet can access it. And it may be up to your ISP whether they will even allow you to do it. (Many of them won't let you run webservers, or have a very high (business-oriented) fee for it.)
In a nutshell, you first need authority over your IP address. Authority is given from the top down. It starts with the whole of the Internet (ICANN manages the Internet's DNS). Top-level domains (below the root
) are managed by other large organizations; for example, Network Solutions is responsible for ".edu
". Below that, there may be first-level and second-level domains. The companies that manage a certain range of IPs are free to assign authority for those over to someone else, if they wish.
a: Get authority over your IP
So, your ISP has authority over some specific chunck of the Internet, identifyable as a certain range of IP addresses. They assign your computer an IP address when you buy their Internet service. However, to run DNS on it for the outside world to see, you need to have authority over that IP, and they may or may not do that (to keep home servers from eating up bandwidth).
You need to go through the process of finding the administrative email address for the authority over the chunk of the Internet in which your particular IP address resides, getting authority and having this information go wherever it needs to go, and setting up DNS and BIND. If you are going to keep sensitive information on your server, or just don't want your server easily hacked, then you also need to set up something like SSL and get a certificate for your site, which can be done though a company providing such service, or you can do it yourself (depends how much trust you are asking people to put in you).
I have not done this and it's a bit complicated. I did find a book that explains it very clearly, and in a lot of detail, called DNS and BIND, 4th Edition
(O'Reily), by Paul Albitz & Cricket Liu. The 5th edition
is coming out soon.
b: Use "DNS forwarding"
Or, you could go the alternate method of using "DNS forwarding". There are some companies out there who obtain authority over chunks of the Internet and charge a fee to maintain your DNS for you. There is some process wherby their public records say that the domain belongs to their IP addresses, and then they forward requests for that IP address to your own computer's IP.
This requires that you install software that informs their database of your computer's "whereabouts" (your IP), and this software must be able to continually update their databases if you have a "dynamic IP" (meaning, your ISP makes your IP change for (officially) security, and to protect precious bandwidth (probably) by making it harder to set up a server on your home computer).
There are a lot of people out there writing open-source and shareware software for doing this, and some of them are hard to use, or seem to fail (which is why I gave up on DNS forwarding). Others have had no problems. I am behind a router with its own firewall (in addition to the software firewall on my computer), and I don't know if that is a cause of my headaches, although some of these programs say they are supposed to work in exactly these situations. Of course, there is no guarrantee.
If you have a static IP (stays the same for a month or forever), DNS forwarding becomes much easier. But I have a static IP address and none of the software I tried worked for me. I decided to focus on the more complicated but ultimately (I hope) more rewarding method of learning to run DNS and BIND for myself, not that I've had time to do so yet. Some people have no problems, so maybe you'd want to try DNS forwarding first. You still want SSL or something like it for certain applications and parts of your websites, though. Security Certificates are a lot less complicated, even if you do your own instead of paying $25 a year.
As for subdomains
, it may be easier to use Virtual Domains specified in your server (Apache), which is all explained in how to configure your httpd.conf
file. It's also good because people don't have to remember a long string of subdomain and domain for a given website, assuming you feel like paying to register multiple domain names. For Apache 2.2
(as in XAMPP 1.5.1), the Documents page is here
. You can find links to various subjects like server configuration, details on every directive used in config files, using server-side includes and much more.
Again, I haven't set up a public server myself and can't give you any assitance on it. But having a public server on your computer involves more than just registering a domain name and running Apache, so I wanted to make sure you knew that. It all depends what you're willing to do yourself, and/or what you're willing to pay. It may just be easier to use a good webhost that allows you to run cgi, php, perl, mysql and whatever, instead of one that has oodles of restrictions. Then you can get all your programming education before you try to run a public server.
Hope this helps.