Setting up a DOS webserver

This how to will describe how to set up a Web server for DOS (using the EZ-NOS server, from www.eznos.org. The minimum requirements for this server are an 8088 processor with 640kb ram (although I've installed it with 512k ram, and it just about worked).
You will need to download a copy of the EZ-NOS server, which you can get from the downloads section of this site, or by clicking here. I have modified the configuration files for this version of EZ-NOS, to make it a little friendlier for computers with little memory. I have also added an install script.
Once you have downloaded the zip file, extract its contents onto a floppy disk (it will fit on to one 360k disk). Next, you will need a packet driver for you network card. You can download a selection of common packet drivers from the downloads section of this site, or by clicking here, alternatively, use the packet driver that came with your card.
Copy the packet driver for your network card to A:\NOS\BIN (you can delete the contents of A:\www if there is not enough space on the disk).
Next, open up the file A:\NOS\HTTPD.BAT in notepad, or similar text only editor. The file should read:
@echo off

REM set up ethernet
c:\httpd\nos\bin\ne1000 0x6f 0x04 0x360

REM start server
c:\httpd\nos\bin\nos.exe -fc:\httpd\nos\nos.cfg
REM when the server exits, shutdown the net
c:\httpd\nos\bin\termin 0x6f
Change the line:
c:\httpd\nos\bin\ne1000 0x6f 0x04 0x360
To match your network card/packet driver (NOTE: Do not change any of the paths, just the packet driver name to match the one copied to a:\nos\bin).
My network card is an NE1000; therefore I put the packet driver ne1000.com in the a:\nos\bin directory. The parameters for this packet driver are in the form:
Packerdrv <software int> <IRQ of card> <IO address of card>
Therefore, the line "c:\httpd\nos\bin\ne1000 0x6f 0x04 0x360" would load the ne1000 packet driver at 0x6f, for a card with IRQ 4, and IO 360h. The software interrupt can usually be kept the same for any network card, however the IO and IRQ settings will need to be changed.

Next, you will need to edit the file a:\nos\autoexec.nos, so open this in notepad, or your favorite text editor.
Find this part of the file:
 ip address 192.168.0.3
#       ***^^CHANGE^^**
and change it to the IP you want the web server to have. This IP should be on the same subnet of the rest of your network.
Now, find:
 route add 192.168/16 en0
#^^CHANGE to your netmask^^
and change it to your netmask. If the IPs of all the computers on your network start with 192.168, this can be left alone.
Finally, find this section of the file:
 route add default en0 192.168.0.1
#^^^CHANGE to your routers ip^^^^


# Add domain name server (Change to your DNS server)
domain addserver 192.168.0.1
#^^CHNAGE to your routers or ISP's DNS server^^
Change the first IP to the IP of your router (or window box running ICS), and the second to either your routers IP (if in runs its own caching DNS server), or to your ISP's DNS server.

Before you run the installer, boot the computer you intend to run the web server on into dos. I suggest you use MS-DOS 3.3, with no autoexec.bat or config.sys files (this should use less memory than later versions of dos).

Your now ready to run the installer script. This batch file will create the directory C:\HTTPD, and copy the contents of the disk to it. So put the floppy in the computer you intend to run as a web server, change directory to A:\, and type "install".
When it has finished, change to C:\HTTPD and run "start". This should load the packet driver, then the web server itself. All going well, you should see something like:
 
C:\HTTPD>start

C:\HTTPD>echo off
Packet driver for NE2000, version 11.4.3
Packet driver skeleton copyright 1988-93, Crynwr Software.
This program is freely copyable; source must be available; NO WARRANTY.
See the file COPYING.DOC for details; send FAX to +1-315-268-9201 for a copy.

System: [345]86 processor, ISA bus, Two 8259s
Packet driver software interrupt is 0x6F (111)
Interrupt number 0x3 (3)
I/O port 0x300 (768)
My Ethernet address is B0:C4:20:00:00:00
After running Start.bat, followed by:

Now, all you have to do is try connecting to the server from another computer, good luck :)
If you have any problems, then please post in the Uncreativelabs forums.