Lunduke
News • Science & Tech
How to: Run a DOS-based Web Server (seriously)
Apache and Nginx, eat your heart out.
December 20, 2023
post photo preview

Apache and Nginx are great Web Servers. Linux and FreeBSD are fantastic systems for running them on. But… what if… we wanted to do something a little more... off the beaten path?

What if -- hear me out -- we ran a Web Server… on DOS?

Yeah. DOS.

It's doable. Truly it is.

And, while DOS may not be the high-up-time, massively scalable Web Server platform of the future… it's still a heck of a lot of fun to set up. Plus, it only takes a few minutes. At which point you can say to the world: “Hey! I ran a DOS Web Server!”

Which is a far more enjoyable thing to say than perhaps it should be.

We're going to use FreeDOS as the base operating system here. FreeDOS is a Free and Open Source, MS-DOS compatible operating system that is still (even nowadays) under active development.

But, never fear, it's still DOS.

Note: Some of this will also work in MS-DOS, but FreeDOS makes the process much easier.

Step 1) Install FreeDOS

  • Go to freedos.org and download the full .ISO for FreeDOS.
  • Then install FreeDOS.

If you have difficulty here, the FreeDOS team has put together step-by-step instructions (with videos, screenshots, the works). Luckily this should be a simple process for anyone who's installed an Operating System before.

For the purposes of this tutorial, I recommend installing FreeDOS in a virtual machine (QEMU or VirtualBox recommended) – that will simply make the networking component much easier. That said, all of this works great even on bare metal… provided you have supported networking hardware.

If you are installing in a virtual machine, set up a VM with 32 MB of RAM and a 500 MB hard drive. This should be plenty. Because… it's DOS.

Step 2) Install DOS Networking Software

Here's where some of the magic of FreeDOS makes things incredibly easy.

Reboot your DOS machine (or virtual machine) and make sure the FreeDOS installer .ISO is mounted (or the USB/CD is in the drive if you are using DOS on a physical PC).

Run the FreeDOS package manager application by typing:

FDIMPLES.EXE

(On a standard FreeDOS install FDIMPLES.EXE will be in the system path, so you can be in any directory when you run it. Otherwise it is, by default, stored in C:\FDOS\BIN.)

From the “Networking” section, select the following packages:

  • FDNET

  • MTCP

  • WGET

Then chose “OK” to install the packages. At this point you'll want to reboot to load everything properly.

Step 3) Install a Web Server

There are, believe it or not, multiple options for running a Web Server under DOS. Seriously. Not a joke.

In this tutorial I'll show you how to install two of them. Because… why not? You can install either. Or both. Follow your heart.

First, let's install Sioux – which is the more feature-packed of the two we look at here. Run these commands one at a time.

md sioux

cd sioux
wget http://www.georgpotthast.de/sioux/sioux.zip
unzip sioux.zip

Now let's install WebServ. Which, believe it or not, was written in BASIC. That's right. Follow this tutorial and you'll have run a Web Server. Programmed in BASIC. In DOS. (Kemeny & Kurtz would be proud.)

cd \
md webserv
cd webserv
wget http://rubbermallet.org/software/download/websv09b.zip
unzip websv09b.zip

Step 4) Run the Web Server

Note: Both Sioux and WebServ require ntcpdrv.exe to be run first. Luckily, ntcpdrv.exe is included with both and super easy to use. Just be sure to replace the IP, Netmask, and Gateway parameters (in the commands below) with the actual numbers for your DOS machine (you can find them when you first boot DOS).

To run Sioux:

cd \
cd sioux
ntcpdrv -ip=10.0.0.2 -netmask=255.255.255.0 -gateway=10.0.0.1
sioux.exe

To run WebServ:

cd \
cd webserv
ntcpdrv -ip=10.0.0.2 -netmask=255.255.255.0 -gateway=10.0.0.1
webserv.exe

All done!

That's it! You now have your very own DOS-based Web Server!

In order to test it out simply load up any web browser you like and point it at the IP address for your DOS installation (same IP that you see at boot time and that you used with NTCPDRV.EXE above).

Wham-o! You've done it! You've run your own DOS Web Server!

This is what the default page shipped with WebServ looks like (possibly the best default webserver page in existence):

community logo
Join the Lunduke Community
To read more articles like this, sign up and join my community today
8
What else you may like…
Videos
Podcasts
Posts
Articles
Open Source Projects Banning AI, From QEMU to NetBSD

While the Linux Kernel is becoming "Vibe Coded", other Open Source projects are outright banning all Al / LLM contributions. Including Haiku, OBS, Zig, & more.

50% Off Yearly, & Massively Discounted Lifetime Subs Through May 31:
https://lunduke.substack.com/p/50-off-yearly-and-massively-discounted

More from The Lunduke Journal:
https://lunduke.com/

00:12:29
Omarchy Linux 4 Mostly Written by AI

"Being into open source and recoiling from vibe coding is a contradiction in terms," says the Ruby on Rails & Omarchy Linux creator.

50% Off Yearly, & Massively Discounted Lifetime Subs Through May 31:
https://lunduke.substack.com/p/50-off-yearly-and-massively-discounted

More from The Lunduke Journal:
https://lunduke.com/

00:17:55
Flatpak 2: Rust Re-write, Requiring Wayland & Systemd

According to The Linux Foundation, the Flatpak packaging system is being re-written in Rust, dropping X11 support, with hard requirements on Systemd and Wayland.

50% Off Yearly, & Massively Discounted Lifetime Subs Through May 31:
https://lunduke.substack.com/p/50-off-yearly-and-massively-discounted

More from The Lunduke Journal:
https://lunduke.com/

00:09:46
November 22, 2023
The futility of Ad-Blockers

Ads are filling the entirety of the Web -- websites, podcasts, YouTube videos, etc. -- at an increasing rate. Prices for those ad placements are plummeting. Consumers are desperate to use ad-blockers to make the web palatable. Google (and others) are desperate to break and block ad-blockers. All of which results in... more ads and lower pay for creators.

It's a fascinatingly annoying cycle. And there's only one viable way out of it.

Looking for the Podcast RSS feed or other links? Check here:
https://lunduke.locals.com/post/4619051/lunduke-journal-link-central-tm

Give the gift of The Lunduke Journal:
https://lunduke.locals.com/post/4898317/give-the-gift-of-the-lunduke-journal

The futility of Ad-Blockers
November 21, 2023
openSUSE says "No Lunduke allowed!"

Those in power with openSUSE make it clear they will not allow me anywhere near anything related to the openSUSE project. Ever. For any reason.

Well, that settles that, then! Guess I won't be contributing to openSUSE! 🤣

Looking for the Podcast RSS feed or other links?
https://lunduke.locals.com/post/4619051/lunduke-journal-link-central-tm

Give the gift of The Lunduke Journal:
https://lunduke.locals.com/post/4898317/give-the-gift-of-the-lunduke-journal

openSUSE says "No Lunduke allowed!"
September 13, 2023
"Andreas Kling creator of Serenity OS & Ladybird Web Browser" - Lunduke’s Big Tech Show - September 13th, 2023 - Ep 044

This episode is free for all to enjoy and share.

Be sure to subscribe here at Lunduke.Locals.com to get all shows & articles (including interviews with other amazing nerds).

"Andreas Kling creator of Serenity OS & Ladybird Web Browser" - Lunduke’s Big Tech Show - September 13th, 2023 - Ep 044
2 hours ago

Companies using AWS have to carefully manage user to prevent surprise bills. Leaving a single server accidentally running can cost tens of thousands a month.

Claude tokens are the same. Employees who refuse to use any tools but AI, or who can't use any tool but AI, can run up bills of $100k or more - each - if the token budget isn't managed.

Case in point:

An unnamed enterprise client accidentally racked up a $500 million bill on Anthropic's Claude AI in a single month after failing to set usage limits or spending caps for its employees.

https://finance.yahoo.com/sectors/technology/articles/client-accidentally-burns-500-million-105400717.html

9 hours ago

AI will replace everyone. Until the bill comes...

Corporate America is starting to ration AI as cost skyrockets
https://www.msn.com/en-us/news/technology/corporate-america-is-starting-to-ration-ai-as-cost-skyrockets/ar-AA24jpoc

19 hours ago

When you must not eat fast food!

The "Windows 1.0" Lunduke Lifetime Wall is here!

Two awesome tidbits:

  1. The 7th Lifetime Subscriber Wall (aka “The Solaris Wall”) is full! No room for any more names! You can see the final version on the bottom of Lunduke.com (and at the end of new shows).

  2. The 8th Lifetime Wall will make its debut on Monday! The retro computing platform chosen for Wall number 8 will be… Windows 1.0!

If you would like to see your name immortalized in a screenshot of the very first version of Windows, from 1985, displayed on both Lunduke.com & at the end of all Lunduke Journal shows (you know you do):

Support the Lunduke Journal… and, at the same time, have your name immortalized in a screenshot of the operating system with (arguably) the worst color scheme in human history.

It’s a win-win.

 

-Lunduke

Read full Article
post photo preview
Lifetime "Solaris" Wall almost full!

Just a quick heads up that the 7th “Lunduke Journal Lifetime Subscriber Wall”, aka “The Solaris Wall”, is almost full!

The Solaris Wall has enough space for maybe 6 or 7 more names (depending on name length)… before we lock it down and move on to Wall Number 8 (which will be another retro computing platform).

Hard to say how long until the Solaris Wall is full… but no more than a few days. These things fill up fast.

First come, first served.

Huge thank you to every subscriber. The Lunduke Journal wouldn’t be possible without you. You rule.

-Lunduke

 
Read full Article
Last call for the "Amiga" Lifetime Subscriber Wall. It's almost full!

Holy smokes, that was fast.

The 6th Lunduke Journal Lifetime Subscriber Wall (aka the “Amiga OS 3.1” Wall) was introduced… what… a week ago?

I kid you not, the darn thing is already almost full! I was wildly unprepared for how popular this would be!

There’s enough space left for maybe 5 or 6 more names. Tops. Then I’ve gotta declare “Wall 6 (Amiga) is Full” and start Wall Number 7!

Here’s what all of the Lifetime Subscriber Walls look like (each shown at the end of every Lunduke Journal video):

 

If you want to get onto the Lifetime Subscriber Wall (and have any chance of making it onto the Amiga Wall before it’s full) here’s what you need to do (and do it quickly):

  1. Grab a Lifetime Subscription to The Lunduke Journal (if you don’t already have one).

    1. A Lifetime Sub includes all the standard perks (plus a few) and can be picked up via Locals, Substack, or Bitcoin (whichever you prefer).

  2. Email “bryan at lunduke.com” and let me know how you would like your name displayed (“Joe A.”, “Joseph Arnold”, “JoeyPants”, “SirJJMcManly”, etc.)

It’s first come, first served.

If you’ve already emailed me about being added to the wall, your spot is secured.

For the rest of you: Chop chop. At the current rate, I would be very surprised if the “Amiga Wall” wasn’t full by some time this weekend.

“Lifetime Wall 7” will be unveiled after the final name is added to the Amiga Wall. And, yes, it will be a different (awesome) retro computing platform.

As always, a huge thank you to every subscriber to The Lunduke Journal. Absolutely none of this would be possible without your support.

-Lunduke

Read full Article
See More
Available on mobile and TV devices
google store google store app store app store
google store google store app tv store app tv store amazon store amazon store roku store roku store
Powered by Locals