Building a Web Server (BSDI/Unix/NT/Windows/Mac/Sun/SGI)
This document will give you information that will give you information about the advantages and disadvantages of different web server hardware, and will also tell you what you need to build your own web server.
Contents
Overview
What is a Web Server?
A Web Server is a computer that is connected to the Internet and delivers Web
Documents to anyone asks for them. This simple idea is the basis for the
most exciting revolution in Desktop Publishing - the World Wide Web. For
the first time, a person with a few thousand dollars can start publishing
documents in unlimited quantities and distribute them worldwide.
Web documents ("pages") can be viewed in a Web Browser such as Internet
Explorer or Netscape, and they can be edited using a text editor such
as Teachtext or a special purpose program such as Web Weaver. Creating
web sites isn't rocket science, it's more like word processing. Once
created, these pages have to be saved onto a web server where other
people can access them.
A web server needs to be
connected to the Internet by a full time high speed data link, so
that people can download pages any time day or night. You can connect
a web server with a high speed data line, or you can bring it into our
office and connect it to our network. This is called "Colocation."
What Services Should a Web Server Have?
In addition to a the Web Server Software, there are several other things
that you will need on your server. These include:
- FTP
If you have a web server you are also going to want to have an ftp server
to upload and download files. FTP is built into Linux, NT, etc.
- MAIL
If you want to have mail boxes to go with your web server, then
you are going to need some mail server software. Unix and Linux come
with mail built in. Mail software is available for NT and Macintosh.
- TELNET OR REMOTE CONTROL
A web server should have some kind of remote control software, such as
Telnet, PC Anywhere 32 or Timbuktu. To remotely administer you should
be able to upload and download files, move and rename files, edit files,
start and stop programs, and reboot the computer. Some systems such as
Windows NT have very inadequate remote control features. Unix and Linux
have text based remote control via telnet that works fine over a
slow modem connection. This is one reason Unix and Linux are so popular
for web servers.
How do I Connect a Web Server to the Internet?
Your web server has to be connected to the Internet so that other people can
download and see the pages you have created. If your computer isn't
connected, nobody can see your work. There are a couple of ways to do this:
- Dedicated Telephone Line
You can rent a dedicated telephone line to connect a web
server to the Internet. You have to keep the same Ip address
all the time, and you have to stay connected all the time.
This isn't a reliable way to connect. You can only let one or
two people access your computer at a time, and the connection
isn't very stable. It can be done, but we don't recommend it.
The cost for a Telephone Line is $150/month for a full time
dedicated connection to Brand X.
- ADSL . ADSL lines offer you a full time connection but they may not
offer
you a static ip address. If your address changes, people aren't going to be
able to find your web site. This issue can usually be settled
with the Internet Serv ice, but be sure to ask.
- Cable Modem. These usually do not have fixed IP addresses,
so they can not be used for web servers.
- Dedicated Hi-Cap (T1 or Frame Relay) Line
This is the best way to connect a server at *your* location. A dedicated T1 connection currently is going to cost about $3400 for equipment and about $1100 per month, all charges included. Frame relay lines, or Fractional T1 lines, are cheaper but offer
much lower bandwidth. If you go to 1/10 the bandwidth the monthly cost goes down by half. This is based on the current rate schedule at Brand X. If you go through Pac Bell, GTE or MCI it's going to cost 2-3 times that figure.
- Server Colocation
This is the cheapest way to get a web server online, without incurring the high cost of T1, Fractional T1 or Frame Relay lines. Server colocation means you bring your server in and plug it into our network. You need good remote control software for this
to work well. If you have things set up correctly, you can use FTP to put things on your server and TELNET to control the server. The cost of co-locating a server is $300 per month in the latest Brand X price schedule, and it is a very attractive alter
native for those that can't justify the cost of a hicap data line.
Operating Systems for your Web Server
BSD UNIX
BSD is Berkely Unix. There is a PC version. Unix was originally developed by researchers at ATT who basically gave it away to anyone who wanted it. Researchers at Berkeley used government (military) grants to rewrite the system and created BSD Unix, whi
ch was originally designed for mainframe computers. Eventually it was converted over to run on the PC, but it's the same programs and code that runs on the bigger computers. In fact, PCs today are often faster than the mainframes that Unix was originall
y designed for.
Unix offers several very large advantages for web servers: It is cheap, reliable, easy to maintain, and it is the standard for Internet. Most of the protocols of Internet actually *are* Unix. For instance, ftp, telnet and mail are all basic Unix functio
ns. Other systems are able to emulate or imitate these functions, but for Unix they are native. Very little needs to be done to convert a Unix computer to a Web Server. All of the Internet basic features and compatibility are *built in* and are a *stan
dard part of the system.*
Server Software
BSD computers usually run Apache or Netscape server software. There are others servers available but they aren't as good. Apache is free which is nice. Check www.apache.org for more information.
Advantage: Easy to Set Up and Use
Because BSD is so compatible to Internet, it is one of the easiest to use and most effective systems to use for a web server. Networking and functions like Mail, Telnet and FTP are built in. For a person who knows what they are doing, Unix is easy and r
elatively fast to set up.
Advantage: Highly Compatible
Having Internet features built in means they are completely compatible. Telnet on a Windows computer is not compatible to the internet standards, which are based on Unix. Mail is built into Unix but for Mac and Windows it's a separate program you have t
o install.
Advantage: Stable and Reliable
Unix has been around for a long time. While updates to BSD come out from time to time, its generally stable and well thought out. The software works, and unless computers are incredibly overworked, a properly installed and maintained BSD computer is pre
tty reliable.
Advantage: True Multitasking and Multiuser System
Unix is designed from the ground up to handle many users and to do many things at one time. Windows and Mac aren't. Obviously these are disireable characteristics in a web server.
Advantage: Cheap
FreeBSD is a popular edition of BSD to run on the PC. It is available for arount $50 from Walnut Creek. It can also be downloaded for free, but this is probably a bad idea, because downloading is time consuming and error prone, and the CD's are so cheap
.
Disadvantage: Requires Expertise
Unfortunately, to get full function out of Unix there is a big learning curve. The text based interface looks like a really evil and confusing version of DOS. It is very intimidating. This scares a lot of people away from Unix. There is no question a
bout it, Unix is a lot harder than Macintosh!
Disdavantage: Documentation is Poor
The standard for documentation on Unix is bad, even for computer documents. Most of it is online and incomprehensible. Once you figure it out, most of it's pretty simple, but the bad documentation is an enormous hurdle to have to deal with. This is one
of the biggest reasons people turn away from Unix.
Disdavantage: No Support
BSD is not supported by a commercial company, and support is mostly through newsgroups or friends. While people in the newsgroups are often very helpful, it's difficult to run a business this way.
BSDI
BSDI is a commercial version of BSD. They basically took BSD source code, which is publicly available, made a few tweaks to the installer and then released it as a commercial product. This may sound dumb at first but there are advantages. At Brand X we
use BSDI because our busines goals require that we use commercially supported software.
Server Software
Unix computers usually run Apache or Netscape server software. There are others servers available but they aren't as good. Apache is free which is nice. Check www.apache.org for more information.
Advantage: BSDI is the Same as BSD, but with Support
BSDI comes with 90 days support and it has a standard version, which makes it easier to set up and maintain. If you are not a Unix expert you should seriously consider getting BSDI with support so you have someone to answer your questions. The people at
BSDI are generally helpful but they may take as long as 24 hours to call you back with answers to your questions and having support doesn't eliminate the need to learn Unix.
Disadvantage: BSDI is Expensive
BSDI can be obtained from the company of the same name. Versions of BSDI go for $600 and up.
Linux
Linux is not true Unix, but it offers all the same features and is nearly indistinguishable. It was written by a single individual named Linus Torvald, who named it after himself. The source code is publicly available and many people have made additions
to the original version. Unfortunatlely, there is no standard version and this has led to some confusion and incompatibilities. Linux from a users point of view is very similar to BSD, but there are a few differences.
Server Software
Unix computers usually run Apache or Netscape server software. There are others servers available but they aren't as good. Apache is free which is nice. Check www.apache.org for more information.
Advantage: Linux has Unix and Internet Built In
All of the advantages we listed for BSD also apply to Linux. It is internet compatible and easy to remotely administer.
Advantage: Linux is Cheap
There are many versions of Linux in books and from various vendors, ranging in price from free to around $200. It is very inexpensive.
Advantage: There are Many Books on Linux
Information on Linux is easy to come by. Barnes and Nobles in Santa Monica carres several dozen books on Linux. This really makes it a lot easier to maintain.
Disadvantage: No Standard
This is a big problem for Linux, and the reason that for in-house use at Brand X we prefer BSD. Linux performs well, but there is no standard version, and compatibility between one version and another is a major issue. There are many patches and add-ons
and so on that allow you to add new features to the system. This may be fun for those who enjoy assembling pieces to make a system, but if you are trying to run a business it is difficult.
Mac
The Mac is an under-rated but excellent system for creating a web server. If you don't know Unix and want to run a web server, this will be much easier than using Windows NT.
Server Software
Mac's usually run Mac HTTP or Webstar. Webstar has many more features and is in fact a commercial version of Mac HTTP. Webstar offers secure financial transactions and costs about $1,000. Mac HTTP is free.
Advantage: Easy to Use
Macs are known for being easy to use, and if you are happy using a Mac and don't intend to invest the time required to learn Unix, you may want to consider a Mac.
Advantage: Inexpensive
A Mac that is suitable for running a web server could be around $2,000-$3,000 - but if you want a fast one you will pay more. They are much less expensive than Sun or SGI computers.
Advantage: Easy to Set Up Databases
If you want to set up a database in Unix, it's hard, but in Mac, it's easy. This will help if you want to set up "shoping carts" or catalogs. Most people use Filemaker or Butler combined with Applescript to make this work. You will probably be able to
build bigger, more complicated sites on a Mac than you would ever dream of building on a Unix computer.
Disadvantage: Remote Administration is Slow
If you want to remotely administer a Mac, you use Timbuktu, which allows you to see the Macintosh screen from a remote computer connected over the Internet. It works well but sending the graphic screen images is slow and less convenient than administerin
g Unix computers using telnet, which is text only and works well over a telephone line.
Disadvantage: Not as Fast as Unix
Mac's fundamentally aren't multitasking computers and are not able to handle as much volume as a similar Unix computer.
Windows 95
Windows 95 can be used for web servers. It works well, is reliable, and reasonably fast. Web servers can be built using a variety of inexpensive or free software. Windows 95 is easier to set up than Windows NT and at least 2x faster. We have had excel
lent results with the Quarterdeck web server, and there are others. Windows 95 is not a true multitasking system and is not a multiuser system but for basic web features it seems to work.
Advantage: Windows 95 is Cheap, Popular, and Works Well
You can get it all to work without a lot of hassle and it is generally
fairly reliable and fast.
Advantage: Windows 95 is Easy to Program
There are many cgi functions and databases that can be set up in Windows. It is a convenient system for programming, particularly if you are comfortable with Microsoft Access and Visual Basic.
Disadvantage: Windows 95 is Difficult to Remote Administer
If you want to remotely administer Windows 95, you use PC Anywhere 32 or a similar program which allows you to see the screen from a remote computer connected over the Internet. It works well but sending the graphic screen images is slow and less conveni
ent than administering Unix computers using telnet, which is text only and works well over a telephone line.
Disadvantage: Windows 95 is Single User
This isn't as bad as it sounds, but it means you can set up things like user areas with restricted access permissions and separate password files.
Disadvantage: Windows is Not Unix
You can set up mailboxes and ftp and web servers and they will work well. But you can't set up full internet services like Telnet. Unix offers a high degree of Internet Compatibility built in which is missing in Windows.
Windows NT
Windows NT has been heavily promoted and is Microsoft's attempt to dethrone Unix as the Operating System of choice for professional computing. The basic idea is good: offer a graphic user-friendly interface with all of the features of Unix. Many of the
Internet related features are still in progress, and not all functionality for Internet Compatibility is available. NT is promising for the future but is difficult to use now.
Software
While many people have used the Netscape server for NT, Microsoft is currently giving away their server software to anyone who has NT. Microsoft's "Information Server" is better and free, so there is no reason to look further.
Advantage: NT is Familiar
NT looks like Windows so if you like the way Windows works you will like how NT looks. NT 3.51 looks like Windows 3.11; while NT 4.0 looks like Windows 95. This does not eliminate the learning curve for NT because there are still a lot of features that
are new.
Advantage: NT Offers Great Free Software
Currently (7/96) Microsoft is heavily promoting NT and they are providing their Internet Server software for free. Free is good.
Advantage: Windows NT is Easy to Program
There are many cgi functions and databases that can be set up in Windows. It is a convenient system for programming, particularly if you are comfortable with Microsoft Access and Visual Basic.
Advantage: NT is Backed by Microsoft
While Microsoft is a latecomer to the Internet game, they are very serious about it. Software is improving quickly and support is good.
Advantage: NT Computers are Fast
I have good friends who work at Microsoft and they tell me that NT is as fast as UNIX. I've done tests and it simply isn't true. NT computers run web sites about half as fast as Unix computers with identical hardware. But NT will run on computers like
DEC Alpha servers, and they are pretty fast. NT will also handle multiple processors, which BSD will not. So, you can use NT to harness a very fast computer.
Disadvantage: Windows is Not Unix
You can set up mailboxes and ftp and web servers and they will work well. But you can't set up full internet services like Telnet. Unix offers a high degree of Internet Compatibility built in which is missing in Windows.
Disadvantage: NT is Expensive
Full on NT server costs about $900. This is balanced somewhat by the fact that they give you the Web Server for free.
Disadvantage: Windows NT is Difficult to Remote Administer
If you want to remotely administer Windows NT, you use PC Anywhere 32 or a similar program which allows you to see the screen from a remote computer connected over the Internet. It works well but sending the graphic screen images is slow and less conveni
ent than administering Unix computers using telnet, which is text only and works well over a telephone line.
Windows NT also offers "Remote Access Services" or "RAS" and can in theory be operated remotely. In practice it is hard to use and only gives you partial access to the computer. Some people like to set up separate telephones to dial in directly to their
server. This is not as effective or convenient as accessing through the Internet, particularly if you are trying to make a change to your site from out of town. NT rates extremely poor in remote administration features, though with the introduction of P
C Anywhere 32, the situation has improved.
Sun
Sun is the old standard for Internet computers; the choice of computer professionals. Sun stands for Stanford University Network, which tells you a little about the history of the computer. They are a private company now.
-
Advantage: Sun is Super-Reliable
If extreme reliability is a criteria, and it should be, then Sun is an excellent choice. They've been around for years and they work great.
Advantage: Consultants and MIS Guys Like Sun
It is not hard to find people who know about Sun computers. Linux and BSD have become popular only in the last couple of years. It is much easier to hire Sun experts than BSD experts. But Sun experts are expensive. It's good to know you can find help.
Sun computers are in use at many aerospace companies and Universities.
Advantage: Sun is Unix
See BSD for a list of why this is good. Sun computers are extremely Internet compatible right out of the box. Internet TCP-IP connectivity is built in. This is a BIG ADVANTAGE.
Advantage: Sun Computers are Fast
Obsolete Sun computers aren't fast, but the new ones are faster than anything available running a Pentium chip. Sun computers have good hard disk interfaces, which helps the performance of web servers a lot.
Advantage: Suns are Popular
Suns are probably the most popular computers for Internet servers. If you assume that everyone who bought one did careful research, this in itself is a good vote of confidence and a good reason to buy Sun. It also means you will not have a hard time get
ting spare parts.
Disadvantage: Suns are EXPENSIVE
Sun computers will cost 2-3 times as much as a similar Pentium based computer. This is why BSD and Linux are becoming so popular. They offer similar features and performance for a fraction of the price.
SGI
SGI computers are similar to Sun computers, and have pretty much the same advantages and disadvantages. They are really great for Computer Graphics, but this is not helpful in building a web server. They cost more than Sun computers, and are not as comm
on. If you are considering a Unix workstation for a Web Server, the SGI is a poor choice because the cost/performance ratio is unfavorable. Have a look at Sun or Pentium based options. We do not recommend SGI computers for web servers, but we do recomm
end them for 3D computer graphics!
Where to Go From Here
Connecting Your Server
If you want to set up a web server at your location, you need three things. 1. An internet service to connect to, 2. A dedicated line from the phone company and 3. hardware to make the connection.
Pricing information for Brand X is available at www.brandx.net; follow the link to rates. There is information about all of the related costs. To summarize, if you are considering a T1 connection fro
m somewhere in Southern California, the cost is roughly $3,400 for the equipment and $1,100 for the service and line, all expenses for the connection included. Not included are your system administration and setup expenses.
Colocation
Server colocation is a very inexpensive way to get going. If you are interested in this option you will need a server, which you can bring to our office and leave on the network. The computer will need to have an ethernet card and all the software conf
igured and installed. Pricing information for Brand X is available at www.brandx.net; follow the link to rates. To summarize, if you are considering colocating a server, the cost is roughly $300/mont
h, all expenses for the connection included. Not included are your system administration and setup expenses.
Getting a Server Built
Brand X personnel are available to construct or install BSD, NT or Mac systems. The base charge is $300 plus the cost of the hardware and software. Brand X will only install legitimate copies of software.
Renting a server
Brand X will also rent a fully configured server for $300 per month plus $600 setup. Brand X will not make flat monthly arrangments to maintain other people's servers, because we have no way to guaranty that they work. But if you rent a server from us w
e will keep it running.
Special configuration and programming may cost extra, and all consulting arrangments must be approved by Brand X management. We build these servers not as a source of revenue, but as a way to make sure that our customers can get a workable reliable serve
r if they don't have one.
Potential Pitfalls: Building an Unrealistic Budget
The biggest potential pitfall in building a web server is inadequate budget for labor and inadequate technical expertise. System administration is complicated. A person can earn a very good income doing system administration. If the system administrati
on part of your budget is zero, and you are not already a trained and experienced system administrator, then you may be headed for a very unhappy Internet experience.
Imagine your system down and broken with nobody who can fix it. Imagine angry customers screaming at you asking why your server doesn't work. Not including an adequate budget for system administration can result in the failure of your project. Planning
to rely on interns and underpaid unexperienced personnel without professional guidance is a popular way to make underfunded budgets balance. It is a false economy. If you are planning a web server project you will save money by making sure it is profes
sionallly built and maintained.
If you are not able to finance the costs of hiring consultants to help with your web server; consider renting a server or signing up for web sites that are maintained by Brand X Internet. They are very inexpensive and we take all the responsibility to ma
ke sure that they work. We recommend that you do not undertake running a web server unless you plan to be a computer guru or you can afford to hire one. Hiring Brand X Internet to do your maintenance can take a lot of the worry our of running a web serv
er.
Good Luck!
If you have further questions and are interested in setting up a web server, you can reach us a Brand X Internet at (310) 395-5500. Our central web site is at www.brandx.net, and you will find rate and other information there too.