March 27, 2006

Curious George: Hosting my own web site, kind of. I'm creating a website for a family friend's business. Very simple, just several pages of information and downloadable CVs (Resumes). I'm using PHP to reduce the workload, by running EasyPHP on my Windows XP SP2 machine. This is an easy way to install and run Apache, PHP and MySQL. I'm on ADSL, with no router, just a USB modem. I need my customer to look at the site and give me comments on the design. They don't live nearby, so I want to be able to give them an IP address, and then they can look at the site live on my machine. How do I set up Apache, the firewall and so on? Security is important. Does anyone know of a better way of letting them see it?
  • No one is helping you. I would help you, but I am a moron.
  • I am adrift and alone - can noone hear my cry? I did try Google, honest. I tried two suggestions, neither of which worked.
  • well muteboy - you could go through all of this and learn the thrills and frustrations of running your own server - or you could sign up to a reasonably priced web host and let them deal with all the issues while you focus on building the site. Better still they could cover the cost of the hosting. Are the hours you are going to put in worth more than less than 10 bucks a month for a host?
  • Okay, I'll step up and offer some free advice, which I'm sure is over-priced. First of all, finish college. It may start to feel pointless and expensive somewhere into your sophmore year, but trust me, it is. But it will help in the long run. Okay. Now, for your specific question. The simplest thing to do is find a cheap hosting service that offers php. It's fun and neat-o to run a webserver from your basement (or closet or under your bead or wherever), but it's no way to run a business. Good luck! Have fun! Oh, yeah. And wear a condom.
  • Yes. All the time. It's uncomfortable at first but after a few days you get used to it.
  • if you really don't want to find a hosting service, i recommend: * install apache but open up a non-standard port * open up just this port in the windows firewall * make sure the admin password for apache is set to something other than the default * change the admin port for apache while you're at it * close the open port after your client has seen the site * set apache services to launch only on demand (so you only have a web server running when you need it) apache really is excellent software and is very easy to use/configure/administer. in the absence of a router, the address of the site will be [ip address:port number]. depending on your isp, the ip address might change every so often (some adsl providers reallocate ip addresses every 12 hours). as far as i can tell, windows firewall does an okay job (note that i'm not a sys/network admin, so ymmv). i know little to nothing about php.
  • Running apache under Windows? Oy vey! Seriously, there are lots of $4.00 monthly hosting plans for what you want, you can probably get a virtual server name instantly and point a domain to it in a day or two at most. You won't learn as much, though, so there's that. You could get an old PII or something, slap a linux distro on it, use some kind of dynamic IP addressing service (i forget the one that used to be popular) and go that way.
  • If you are going to run it from your home, you may want to be very selective in opening the firewall and configuring apache. Consider setting apache to Deny from All Allow from www.xxx.yyy.zzz (your client's actual public IP). They can use a public server to find out their IP (such as DSL reports), and you're not going to be found by a port scanner. If their IP changes, either put in a range or change the config. You could also do something in PHP to not load for anyone but the client.
  • Aha, so you were listening! Thanks for your suggestions. I do have proper hosting ready to go, with PHP and so on - sorry I wasn't clear about that. I just want to show the client (my partners mother, in fact, so best behaviour) what I had so far, without anyone else seeing. roryk: That's like what I was trying to do, without success. I could put it on the host for her to see, but then it would be available to everyone, and to Google etc. There is an 'under construction' page there at the moment. Ah! OR I could put a password on the new stuff, and only release it when it's done. Yes. That is what I'll do. Did I tell you I got the lead in a play? p.s. stomper: Sophomore? I wish. I remember when all this was fields. Of wheat.
  • I find that if I concentrate, very, very hard, I can transmit the image of a new website to my clients via the sheer power of inter-cranial thought imagery transmission. For instance, right now I'm concentrating intensely on Monkeyfilter.
  • Google and such can't find it if you don't link to it. Hide the information in an obscurely-named subdirectory on your hosting account, and, if you like, password-protect it.
  • As mentioned somewhere on these wide open lonely innernets, what is my ip is handy.
  • "I remember when all this was fields. Of wheat." Wheat! Wheat! Lots of wheat! Fields of wheat! Cream of wheat! A tremendous amount of wheat!
  • notnamed: bingo. I think that's the way to go. And now, a puppy in a pot.
  • "Wheat. I'm trying to host a website, he's talking about wheat."
  • None of the search engine bots will link to it if you have a properly configured Robots.txt file.
  • p.s. stomper: Sophomore? I wish. I remember when all this was fields. Of wheat. Ahh, sorry, my bad, no offense. Since I was in my early 20's (between my first and 2nd dropout stages) when I was doing the whole "let's host a website from under my bed!" thing, I wrongly assumed you were about that age, too. When of course now I see you are about my age, which raises (but does not beg) the question of what the bleep are you doing with a webserver under your bed?! Then I read the rest the thread, which answers that question, and this whole comment dissappears with a boik!
  • stomper: no offence taken! Right, just to get some closure on this sorry episode, I've put the draft pages up on the host, used .htaccess and .htpasswd (my host provides a little tool to create these files with the correct parameters easily) to restrict access to the draft stuff, and sent the username and password to the client. I've used robots.txt to stop any crawling. I'm also using Robots to stop anybody getting into my bedroom. Kill, ED101, kill!
  • Apache is pretty easy to install, especially on Windows. But if you get stuck, I wrote a book about it.
  • Also, look into dynamic DNS (dyndns.org is one). This will let you set up a temporary subdomain where the client can look at the site. Once you're done, just disable the service.