Instructables

Set up your very own Web server!

Ever wanted to have a place where you could keep your files and access them anywhere you get an Internet connection? Say you wanted to have your music library available in case you wanted to give a song to one of your friends, or maybe you wanted to let your relatives download your entire library of vacation photos, or maybe you need a place to host programs you write or maps you make. How about a Web page? Ever wanted to have your own Web page? All of these can be accomplished with a home Web server...and more!

It's actually really simple to set up a Web server at home. I'm going to use this while I'm away at college to host game servers, have an offsite file backup, and share files with friends. Since the PC hosting the server will be at my house and I will be in my dorm room, obviously I can't just walk over and start changing system settings, so we'll need some kind of remote access.

Also, obviously, you'll need a dedicated PC, one you can leave running and leave connected at all times. What good is a server that goes down all the time? This PC doesn't have to be great, but remember, the more you run on it, the faster the PC needs to be to not lag (duh).
 
Remove these adsRemove these ads by Signing Up
1-40 of 214Next »
MrSTUDofRC12 days ago

I cannot seem to get "sudo apt-get install proftpd" to work - it can't find the package - even when I do do "aptitude update" - please help

vishal4122 days ago

very very good

SHeriff1926 days ago

It works for streaming internet Radio ??

eamc3171 month ago

Awesome! Thank you very much!

fluttrz4 months ago

I have to just say after i read "This PC doesn't have to be great, but remember, the more you run on it, the faster the PC needs to be to not lag (duh)." I have to say I had to sign up right then and there. TOTAL HONESTY very nice touch. And I am very glad I did register your site is THE SITE I have been searching for, to bad it took ... lets just say WAY TO LONG to find it. I will be passing your site on to all those that will listen. Great job. Oh and thank you.

smartlink4u7 months ago
Hi every one,

Can any one tell me about the look of this server? Can I attach this server with the website like with user name and password box is it?

Its my skype: smartlink4u (add me for discuses)

Thanks
hi great instructable you it helped me greatly
thesush1 year ago
Hi great instructable !! I just have a question about trouble shooting. When I try to search my internet ip it says my internet server can not be found. I suppose this means my port forwarding isn't working however I trying to troubleshoot this and nothing seems to be working :(. Any suggestions? Thanks!
WTF - WHY WASNT THIS INSTRUCTABLE FEATURED ?!!?!!?!!?

Such a great instructable !

I really want to make a home web server too but will wait until you make an upto date windows server as i only know windows 1 !!!

Many thanks in advance for the Up and Coming Updated Windows Server for Home users-hack-thing-instructable, lol !!!
I have one question before I attempt this. Does the size of the hard drive matter?
I notice in your specs it says a 60 GB HDD, but is that enough to hold all of the data that your server is going to handle? I only ask because the PC I want to do this with has an 80 GB HDD
blazed012 years ago
Hello, I'll try to set-up a web hosting using ubuntu server 11.10 but, when i try do the step a got error also when i try install apache2, and the GUI. I don't what to do....please help me. thanks!
techboy4112 years ago
Well........SmootWall?
harias3 years ago
I got an error message when trying to activate:
-Fatal: TLSRSACertificateFile:'etc/garmin-proftpd/certs/cert.pem' does not exist online 57 of '/etc/proftpd/proftpd.conf'
I am using Ubuntu 10.10, nd I have the feeling this tutorial is for a lower version...
I'm using Kubuntu 11.04 and I got the same issue. Try filling in the info. fields on the certificate section, then click apply. (scroll down a bit) It worked for me!
maxpower495 years ago
how can you tell if your processor is 64 bit compatable
Q-ro maxpower493 years ago
If you are using Linux you could run the following command on a terminal (command line):

uname -m

if you get a i386 or i686 response then it is 32 bit, a x86_64 response means its a 64bit.


Also if you get the 2 editions (64 and 32), and try to get the 64 bits version running on your pc it won't work at all so you will know you pc is not meant for 64 bits .

Another method would be to check the processor manufacturer webpage.
CalcProgrammer1 (author)  maxpower495 years ago
If you're in Windows, you can use PC Wizard 2008 (free app, google it) and check for "AMD64" technology or "IA_64" or something like that. If you're unsure, you can use the 32 bit edition on any PC (64 or 32 bit processors both run 32 bit programs, only 32 bit processors can't run 64 bit programs). You probably won't notice a major performance difference between the two versions, so just go with 32 if you are unsure.
Q-ro3 years ago
One question ¿is it possible to set a GUI on a server edition? i was just wandering, i believe i can just install the genome-desktop package from aptitude, but don't wanna try it out to discover it mess up my server.

Thanks in advance.
You can try checking the computer properties by right clicking on my computer and clicking on properties or try going to your run program in the start menu and type dxdiag click ok and click yes on the popup window.
CalcProgrammer1 (author) 3 years ago
This tutorial is over 2 years old, I wrote it in 2008 for Ubuntu 8.04 LTS which is now very outdated. The packages have changed and it looks like gadmin-proftpd does not work the same way as it did in 8.04. Unfortunately I do not have time to create a new Instructable, also I switched my server to Windows XP Pro because I needed to run some Windows stuff that Wine couldn't handle.
shaqadim4 years ago
 mine keeps on coming up saying that my computer can only be reached on a local network but i have a ethernet cable connected y wont it connect to the internet
you need to go into your router and configure port forwarding
web port is 80 and set the address as the webserver and you should be able to access it from the EXTERNAL ip address that your network sits behind
Knuxz shaqadim3 years ago
You probably need to open the correct ports on your router so that when other computers are trying to remotely access it they can have a path to follow.
may also want to set up ddns.
Once you start using a web server, you will wonder why you never used one before. I run my private apache web server on an old an old pII. It is currently running Ubuntu though I prefer debian when I am not running centos. I had it on I think ubuntu server 6.x and have done in-place upgrades as they came along the way to 9.x. (i.e. no reformatting or disk wiping). This is an example of the actual web pages i run on it. http://www.instructables.com/id/Uses-for-your-own-private-cloud/ I have since added doing home automation on it. Keep finding uses for that legacy computer. Microsoft Windows Supporters said I should have thrown away a long time ago. It is not what you use, but how you use it.
BitFiber4 years ago
 I have a problem.  I forwarded my ports correctly, and I can't access the 'It Works!' page from my internet ip.  I can access it from my local ip.  What could be wrong?
Your internet address will be differrent from your local address. ddns is a way around that. There are several free servers to allow to do that. web search free ddns.
CalcProgrammer1 (author)  BitFiber4 years ago
If you can't access the page from your Internet IP it may mean that your Internet Service Provider (ISP) blocks port 80 (the HTTP port that web pages use).  This is more common than I would like to believe for home ISP's and they'll use some lame excuse like "security" to back up their business-greed-minded decision (they unblock port 80 at the "professional level" for an additional $20 because monopolies will do anything to force the extra buck sometimes).  I would try serving on different ports until you find one that your ISP doesn't block.  I'm not sure how to change the port for Apache (probably a setting file that you'll have to edit at the terminal) but to access HTTP sites at non-80 ports you tack the port number on to the IP or web address such as http://192.168.1.1:210 (connecting to IP 192.168.1.1 [the standard router local IP] on port 210 [the alternative port I usually use for FTP at school]).  I like to use ports that are similar to the correct port, such as using 210 for FTP (which is normally 21) or 800 for HTTP (normally 80).  If these don't work, I also like ports 1337 and 31337 for obvious reasons.
Dms124444 years ago
Pardon my asking, but in Windows couldn't you just use IIS (internet information services), It's free (I think), and runs on Windows.
I will take xampp or wampserver (both free) over iis anyday. Besides iis does not come wih mysql or php. MsSQL is not free last I heard. Have not programmed is asp.
Zicologo4 years ago
CalcProgrammer, is IE the only way you can use to upload files to the server?
I Install ssh and and openssh-server and then use WINSCP on mswindows to transfer files.
CalcProgrammer1 (author)  Zicologo4 years ago
Certainly not!  My favorite is FileZilla Client, it's an open-source program that is designed for uploading and downloading from FTP servers.  It is available for Windows, Linux, and Mac and it's in the repository of most Linux distributions so installing it shouldn't be an issue.

If you're using Windows to host a server, I also recommend the (Windows only) FileZilla Server, it is a solid FTP server that is probably the best FTP server I've used on any OS.  However, Windows isn't free and Linux is a stable server platform, but I switched my server to XP because of other things I needed to run on it.
I'll give a thumbs up for FireFTP, it runs on any computer than can run Firefox 2 or higher (Win, Lin, OSX, whatever) and it pretty fast, being that it's basically a plugin for Firefox.
ddvniek4 years ago
But what if you don't have Linux?????? What do you do then?? I have Microsoft Windows 7.
You can try something like wanp (wampserver). I am a linux person, but I had to set up a web server on windows xp to do a home automation demo for friends.

http://www.instructables.com/id/Quicky-web-server-for-MSWindows-XP/
http://www.instructables.com/id/Home-Automation-MSWindows-XP/
There is also xampp for windows.

As soon as I have access to w7, I will do a couple of update instructables.
CalcProgrammer1 (author)  ddvniek4 years ago
This Instructable covers setting up a Linux Server, thus it mentions Linux programs.  However, if you want to use Windows for a server there are plenty of great apps.  I recommend FileZilla Server for FTP, Apache for HTTP, and TightVNC for remote access.  I actually switched my Ubuntu server to Windows XP after I wanted to use it to stream music to my Xbox 360, I have TVersity running to stream media and with Windows you can also share your files locally on the LAN easily.
you can stream media from Ubuntu to an xbox, just find out what protocols it supports and install some daemons for them. hey LMGTFY - http://adf.ly/5WP9

I am running Ubuntu 10.04 Lts. In the VNC, there is no option to make it public. how do I make screen sharing public?
So far, this is a great Instructable. I just have a small problem. When I click apply changes, I get this. Error: user not found, couldnt change its settings. Could you possibly tell me what it means? Thanks
1-40 of 214Next »