Teach Yourself ActiveX in 21 Days

Previous Page TOC Next Page



— 10


Setting Up an ActiveX Web Site


Until now, we have approached the Internet from a user's perspective and, to some extent, from a programmer's perspective. In this section we'll take a more holistic approach and view it from a Web site administrator's perspective.

The ActiveX features were, after all, designed with a focus on empowering the Web site administrator. ActiveX allows the administrator to command "Give me this and that" and for the programmer to respond with, "How high and when?" Knowing the parts and pieces with which the administrators are working will help the programmers provide them with better tools.

In this chapter you will be introduced to some of the requirements for operating Web and other Internet servers. I will focus on three major pieces of a Web site and what ingredients go into them, and will discuss how they relate to ActiveX programming. These pieces include


System Requirements


When setting up a system to access the Internet, you will need a certain mix of hardware and software, installed and configured to meet your specific purposes. To determine this mix, you first need to know what the purpose of the Web site is going to be. A site can be set up for several reasons.

Every business, of course, can find a commercial purpose geared to its specific industry. The company could use it to peddle its wares, or just publish information about its product.

Individuals also like to post their own home pages. Using the Web in this way gives every family (that has access to a computer) an Internet presence. Folks like to publish the goings-on and interests of their family to keep friends updated. It's like having your own family newspaper!

If you're going to have a dedicated Internet server, there are certain site-management features you may find important to have. If you're going to have an office desktop PC, you will want to make sure that it has a Web-browsing and news capabilities. If you're going to have a portable device, like a laptop or PDA (Personal Digital Assistant), you will probably need scaled-down network services such as simple e-mail and text browsing.


Hint

When you set up a Web presence, it's tempting to try to take advantage of every single piece of technology out there. This can give your users a very cool site that uses audio, video, and inline images, with buttons, arrows, and little circles describing what each one is. When you do this, try not to leave your less-activated users out in the cold.
All these powerful features become null and void to a user who has just simple text access to Web pages. (Don't laugh. Scientists are still finding "living dinosaurs" in various backwater parts of the world.)
You should always include an option on your pages to allow users without ActiveX capabilities to interact with the content (see Figure 10.1).


Figure 10.1. Users will access your site with a variety of different types of terminals.

Hardware


The hardware used for client and server machines, logically, should be different from each other. This is because their missions are different. A standard client, like a desktop PC, does not need a dedicated LAN-type connection to the Internet (but it helps). A standard server, like an HTTP Web server, will need that dedicated connection, but may not need to be able to make outgoing calls .


Network Access Devices

There is a tremendous variety of Web browsers and other Internet-access programs out there, but in the next few years some of these programs will be ported to smaller, hand-held, or even the new Internet TV-top devices (see Figure 10.1).
Some of these hand-held devices use a tiny LCD screen, while many of the proposed TV-top devices include very limited text input. Few, if any, of these devices will be able to access your other, expensive, programs like MS Office or Shockwave for Director.



The Client System

The most basic of hardware required for any system is pretty standard stuff—a console (monitor, mouse, keyboard, printer, case, and power supply) and a CPU (Motorola, Intel, and so on). Although you may be operating your own servers, you will want to do so through a remote client. You can administer the server from its console, but remember that the server may be too busy doing other server things to act effectively as a local terminal as well.

Along with the basic box just described, you will need multimedia hardware (which you probably already have) such as a joystick, sound card, and high-quality video card and monitor. You can get really carried away with the multimedia and add MIDI keyboards, radio and television cards, and CD-ROMs—all of which can be then coordinated through ActiveX programming.

Finally, the most important part of the client system is its network connection. The client can be attached to the Net in a variety of ways.

Modems can be used to access the Internet through a dial-up account . This type of account usually provides for a dynamically assigned IP address. Some providers will go as far as to assign dial-up users a static IP address (usually for an added fee). On standard telephone lines, modems can be used that are rated in speed from 2400 baud to 14,400 bps. In most areas of the United States, that number can go as high as 28,800 or 36,600. For additional fees to the ISP and your phone company, you can use a higher-speed modem and ISDN line to gain access as fast as 57,600 baud.


Dynamic and Static IPs

IP (Internet Protocol) addresses are unique numbers used to define a specific host (or computer) on the Internet. Your IP is assigned to you by your ISP from its block of available numbers.
If an ISP has a block of 1,024 IP addresses and has 500 users, it will have no problem giving each one of those users his own IP address.
If that ISP has 2,000 users, some of them will have to share an address. It works like this: The provider assumes that fewer than 1,024 users will be logged on at any time, and dynamically assigns each user an address when he logs on. The ISP then frees up that address when the user logs off, making it available for the next client .
Some users, however, will want or need a static IP address . This gives him the same IP every time he accesses his account. If you plan to use server-type software, this can be very useful for speeding up the system. Efficiency is increased with a dedicated IP address by not forcing the client to do a DNS (Domain Name Service) check to locate the server.
In ActiveX programming, you will want your code to intelligently allow your users to use domain names (such as bucky.com) or addresses (such as 204.181.96.53) to access different sites.



Warning

Often, users get very frustrated with trying to assign a domain name to a dynamic IP . It can't be done. To do so would require the updating of every single DNS in the world every time that user logged on to his ISP dial-up account.


Besides connecting through a modem, a client may be hooked up to the Internet through its LAN. This will usually happen in a corporate or other institutional setting—but hey, it could happen at home, too.

With a dedicated connection through a network card, your LAN would probably be hooked up to the Net through a dedicated ISDN or T1 line. As a rule of thumb, ISDN gives you at least twice the speed of a regular modem, and a T1 will give you about twice the speed of an ISDN connection. (See Figure 10.2.)

Figure 10.2. If you have a dedicated (i.e., network card) connection, every station on your entire LAN is probably connected to the Internet.

The Server System

If your network needs are aimed more toward making information available rather than retrieving it, your system needs to reflect that mission.

The basic hardware for a server is similar to that of a desktop machine—a console (monitor, mouse, keyboard, printer, case and power supply) and a CPU (Motorola, Intel, and so on). That's pretty much where the similarity stops.

Most servers have very little need for multimedia hardware. Unless the purpose of your server is multimedia-related (such as a RealAudio or TrueSpeech network), you can get by fine with an 8- or 16-bit sound card, or even no sound card at all.

You will probably want some kind of audio, though, so that you can hear the alarms when something goes wrong. For the most part, however, most ActiveX programming does not require any multimedia on the server at all. There are a few exceptions to the multimedia requirements on Windows NT IIS (Internet Information Server) systems. Since these systems usually run unattended, they may require no more multimedia than a CD-ROM - and that to hold the installation disks.

You will also want to have plenty of storage and memory resources. On an Internet server that receives a lot of simultaneous hits, you should have very fast hard drive access—SCSI (Small Computer Systems Integration) hard drives are great for this. You should also have an abundance of memory to handle several instances of several programs working together with some degree of speed. If your server has to constantly swap between memory and storage, it is going to become bogged down, and users will time-out.

Finally, the most important part of any server is its network connection. No network, no server. For this reason, an Internet server is almost always on a dedicated connection (ISDN or T1) to the ISP. This is usually handled with a network card in the computer case. A cable comes out of this card and goes to a router that passes the signal on through a T-1 or ISDN and out to the ISP .

Server Software


When you have a computer that is all hooked up to the Internet, you are ready to start setting up your Internet site or "Net presence."

E-mail

If you are managing your own server, one of the most important services you will want to install on your network server is e-mail . Users who want to send feedback to a Web site administrator will often address their comments to webmaster@whatever.net (or some such address).

To enable these services you will need a POP3 server and an SMTP server. (See Figure 10.3.) An SMTP server will allow your users to send e-mail. A POP3 server is used to store incoming mail for your users until they are ready to retrieve it themselves. The two are usually integrated into one software package.

Figure 10.3. SMTP and POP3 are used to send and receive e-mail.


Hint

When working with ActiveX products, it's usually a good idea to stay with Microsoft's server products—but not always.
Microsoft offers a wonderful e-mail server package: MS Mail Server. It has tons of really great features and allows for plenty of different e-mail accounts over a number of different types of networks. To enable the SMTP features, however, requires (or did at the time of this writing) a very expensive gateway in addition to the server software itself. There lies the rub.
If you are going to be servicing only a limited number of accounts, and they will all use SMTP, MS Mail is a heck of a lot more bang than you need. All its wonderful features will go completely unused and may even serve as an obstacle to productivity as you try to work around all of its features just to enable the few you need.
ActiveX does not require any specialized e-mail services—and, in fact, it is best if e-mail processes stick to the established standards. After all, SMTP is short for Simple Mail Transfer Protocol!



News

Internet News (Usenet) is very similar to e-mail. You compose a message, called an article in NNTP (Network News Transfer Protocol) lingo, and send it to a server. The recipients then retrieve the article at their leisure. This is where Usenet and e-mail branch off: You don't specify a recipient for a news article; you specify a newsgroup to which the article will be posted. The article is then retrieved by anybody who subscribes to that news group. Now you're a published author!


Note

For you WinSock programmers, you should know that e-mail works over TCP/IP port 25, and NNTP works over TCP/IP port 119.

It is seldom necessary to set up a Usenet news server—unless you are operating an ISP yourself. Also, in some instances, you may want to use one to create a public forum to host discussion of a topic relevant to you or your business.

Usenet news servers can be difficult to manage. Keeping the message counters correct and maintaining a feed with other Usenet hosts can be quite time-consuming. Also, bandwidth can be used up quickly with the more than 14,000 public newsgroups available to your users.


Microsoft's Internet Mail and News

This is about as good a time as any to install Microsoft's Internet Mail and News client onto your machine. You can find it on the CD-ROM that accompanies this book in the setup file named MailNews95.exe.
Here's how to install the client:

  1. Double-click on the setup file, MailNews95.exe.
  2. After accepting the EULA (End User License Agreement) you are prompted for your name and organization. Of course, if you are not affiliated with any organization you do not need to put anything in that space!
  3. Next you are prompted as to whether you want to install the news client, the mail client, or both. For now, you need only select the news client, but you can install the mail client also, if you like.
  4. Now the installation routine will copy the necessary files to your computer and prompt you to reboot. Do so.
  5. When your system comes back to you after the reboot, you're ready to configure the system. To do so, right-click your Internet Explorer icon (on the desktop) and select the Properties option from the pop-up menu. A tabbed configuration dialog box appears; select the Programs tab.
  6. The Programs tab has a section that allows you to specify which programs you want to use for Mail and for News. Select Internet News for your newsreader.
  7. Run Internet Explorer. When it's fired up, you should notice a new Mail icon on your toolbar. When you click it, a pull-down menu will appear. Select the Read News option from that menu. The Internet News program will fire up, and you will be ready to configure the reader.
  8. When your newsreader is loaded, you can exit from the Web browser if you choose. The newsreader will still be there. From the newsreader's menu, select News and then Options to go to the configuration for the client.
  9. The news options are many, but there is only one tab with to concern yourself with here: the Server tab. Click it.
  10. Enter your personal data—name, e-mail address, and organization (if appropriate). Then, at the bottom of the tab box, you should see three buttons, one of which is Add. Click it.
  11. A News Server Properties dialog box will appear with three tabs. In the general tab, enter the name of Microsoft's NNTP server, msnews.microsoft.com.
  12. Click the Connection tab and enter the properties for your specific type of Internet connection.
  13. There is not much to put in the Advanced tab, but you should check it to make sure that it is using TCP/IP port 119 and that it is not set to use a secure connection.

You are now finished installing Microsoft's NNTP client , and are ready to participate in Microsoft's newsgroups.


Transfer

Another service you will most certainly find necessary is FTP (File Transfer Protocol). This will allow you to make ZIP and other files available for downloading. To make this easy, Windows NT comes with a built-in FTP server. With it, you can provide anonymous or password-protected access to your FTP server directories. The anonymous access feature allows all users to access files and directories. The password-protected feature allows special file privileges to be assigned to individual accounts. It also has features for enabling various levels of security to fit a particular need .

Web Server


This is the service that enables users on the Net to access your Internet site with a Web browser such as Netscape. It is also one of the more complex of server systems to operate and maintain. Security features must be monitored and, as with most other servers, the logs must be monitored and user configurations kept current.

Each Web server package available has its own tips, tricks, and features. All of them enable users to retrieve hypertext documents, and most even have features for allowing CGI, Perl, or other server-side scripting.

Microsoft has introduced its IIS (Internet Information Server) as a part of Windows NT Server 4.0. This is the first complete ActiveX Web server released, and allows for such features as ISAPI and Trust Verification as well as other secure transaction features. As you develop ActiveX applications (both server and client), you will find the use of an IIS server invaluable in testing and debugging your processes.

Database Server


The idea of a database server is not new, but only with the development of ActiveX has it become powerful for everyday users as well as advanced programmers. Microsoft BackOffice includes SQL Server and is a very powerful tool for any large or small corporation. dbWeb is a relatively new product from Microsoft that is designed specifically for enabling database queries and responses by way of the Internet. If SQL Server is a bit more than you need, there are also more Web-centric packages such as dbWeb. These enable user interaction with ActiveX databases over a network.

Web Site Administrator Requirements


Basic management of a Web site is relatively safe and simple. The managing and monitoring of user activity logs and other similar functions tends to be fairly routine stuff once the server is configured properly. That is why most ISPs will provide their users with facilities to set up and maintain their own Web pages instead of forcing them to operate their own Web servers.

The tougher issues, like security and directory structure, are handled by the network administrator, but sometimes even those functions are handed down to the individual Web site administrators.

Technical Skills


The focus in ActiveX programming is to treat everything on the Net as a bunch of objects—each having its own properties, methods, events, interfaces, and so on. The definition of a Web site administrator is expanded somewhat because of this.

Administrators need not be programmers themselves, but it helps to have access to one to help write client and server scripts. They also need not be hardware specialists, again, as long as there is one available. Finally, they need not be certified network specialists—as long as they have access to one.

It would seem that a Web site administrator needs to be a jack of all these trades, but a basic familiarity with ActiveX and OLE is all an ActiveX Web site administrator needs to have in the way of technical skills. A better analogy is that the Web site administrator is a conductor, constantly trying to balance the different parts of his symphony (see Figure 10.4.). The real talent as an ActiveX site administrator comes in providing content rather than being an engineer.

Figure 10.4. ActiveX Web site administrators coordinate the efforts of a team of technicians (locally and remotely).

Hardware

The hardware for an ActiveX Web site is very much the same as for any other Web site. The major difference between the two is the use of interactive multimedia, or active content. ActiveX Web sites will tend to manage more multimedia content, and for debugging purposes may need some degree of multimedia capability.

An ActiveX Web site administrator is faced with very few hardware issues. A few of them that one may face include:


Software

An ActiveX Web site administrator needs to be familiar with the wide variety of different types of Web browsers that will be used to access his site. This is usually limited to MS Internet Explorer and Netscape, but can include a great many others.

To send files to, and retrieve files from, a Web site, the administrator will probably need to use an FTP client. If you enable your users to have FTP access, each user will be able to manage his own accounts, such as WWW and FTP.

Most importantly, you must be familiar, to some extent, with all the software running on your servers. This is not as important if you are using your ISP's servers rather than your own. Two times you will definitely want to be familiar with your ISP's server software are


Networking

Managing a Web site really does not require a very in-depth knowledge of networking . In fact, most HTML authors do not know or care much at all about networking as a technology. They just do it. There are, however, a couple of key networking features about which you, as an ActiveX programmer, need to be aware.

Figure 10.5. DNS resolves hostnames to IP addresses and back.

When your domain is registered through InterNIC, other users can connect to you with a relatively easy-to-remember name such as MyHost.MyDomain.Net instead of having to use a mix of your hostname and your IP address like MyHost.123.45.67.890.


Note

In an intranet , such as an office LAN, you can usually omit the domain name of a machine within your own domain, using only its hostname to refer to it.
For example: if you are operating a machine named MyHost.MyDomain.Net and want to access another machine at MyDomain.Net named YourHost.MyDomain.Net, you could simply refer to the other machine as YourHost.



Network Protocols

TCP/IP (Transmission Control Protocol/Internet Protocol) is the language of the Net. It is the protocol used to communicate between hosts. Whether you use a dial-up, ISDN, Frame Relay, or T-1, you will use TCP/IP.

There are a variety of other services that can also be run on the Net, but these would still use TCP/IP to communicate. Some of the services that you can run over TCP/IP include SNMP (Simple Network Management Protocol) and any or all the standard Internet services (FTP, SMTP, HTTP, and so on). Often these services are referred to, not incorrectly, as protocols. (See Figure 10.6.)

Figure 10.6. FTP is working over TCP/IP. TCP/IP is working over ISDN. ISDN is working over the telephone network.


Note

You should remember that a protocol is a language or syntax, and a service is the implementation of that protocol (or set of protocols).

To use these services, you need not know too much about how they work. However, to program with them using ActiveX controls, you will want to have a fairly thorough understanding of the respective standard.
E>


Wear Your Socks
Prior to ActiveX, there was one library within windows that gave programmers a facility for programming Internet applications for Windows: the WinSock.DLL, which is based on the Berkeley Sockets specification. Now, with ActiveX, we have a bucket-load of libraries and controls with which we can very easily program the same applications.
With the WinSock , the programmer needed to be quite expert in the hows and whys of TCP/IP. Often, when creating custom Internet applications, programmers found it easier (if not better) to create their own protocol rather than to stick with the established ones. Programmers are not known for being conformists, and learning how everybody else did mail or file transfers was actually more difficult than creating one's own, proprietary method.
Of course, this failure to comply with established standards meant that many programs written for the Internet were actually only usable for a specific purpose and were not generally compatible with other Internet applications. By releasing such a rich and wide variety of Internet programming tools, Microsoft has given us a way to stick to established protocols without having to be a network guru. We just end up looking like one.
You will learn more about these powerful controls in the final chapters of this book as you create News, Mail, FTP, and other standard network utilities .



Internet Service Providers


An Internet Service Provider (ISP) is an organization that provides a user with a connection to the Internet, usually for a fee. Most cities have at least one ISP operating locally, and almost every metropolitan area has more than a dozen small and large providers.

Most ISPs can be broken down into two categories:

Usually a provider will offer both commercial and individual network services, concentrating on one and offering the other on the side.


Yeah, but where does an ISP get its connection?

Some of the more established services, such as CompuTek.Net and MCI.Net, even offer such a high grade of service that other ISPs get their connections from them.
A good example of this ISP-to-ISP service is FishNet, a dial-up ISP in little Greenville, Texas. FishNet provides individual and commercial users in its area with dial-up Internet connections.
FishNet , in turn, gets its Internet connection from CompuTek in Dallas over ISDN lines. CompuTek, then, gets it's connection from SprintLink Network over several T-1 lines.
Sprintlink and CompuNet have the rare advantage of being located in the Richardson, Texas "Telecom Corridor." Richardson, Texas and Raleigh, North Carolina are the hubs of North America’s two main Telecom R&D networks and, as such, are referred to as corridors.
Sprintlink runs backbones that connect nodes all over the world—linking many networks, LANs, and ISPs together in one big Internet. There are also several other backbones, such as MCI, AT&T, and UUNet, as well as several FreeNets—each providing a connection, of one sort or another, to the Internet.
So where did the connection originate? Well, the final mass of connections is the beginning and the end. The Internet does not "exist" anywhere, and there is no original source. When you connect to somebody who connects to somebody who connects to somebody... you're Internetting! So when you connect to an ISP, you are opening a path to everyone else who can open a path to your ISP.
Sometimes portions of the Net will go down for a time, but stocks do not necessarily plummet, and businesses do not necessarily fail. In early August 1996, AOL (America Online) went down for a while. Users could not access the Net, but the Internet itself did not collapse. Portions of the phone network go down from time to time also, but they always restore the lines.
So, as long as you can call up your ISP, and your ISP is connected to somebody—even if it's just connecting its subscribers to each other—the Net is not "down" for you.



Building a Bomb-Proof Network : A Modern Fable

Once upon a time, there was a great country. The people of the country had spent the last 50 years at war, and there seemed no end in sight. In fact the bombs they made for their enemy were so big, the leaders decided to live underground for fear off fallout. They decided also that they would talk to other leaders on the phone and wouldn’t be lonely.
They knew that the bombs, when they came, would land everywhere. The buildings would be gone, and their phones would stop working. So they went to their scientists and asked them to build a bomb-proof phone system.
"That would be a very interesting task," the scientists said, "but we’ve been building bombs. We don’t know anything about telephones." So half of the scientists that were building bombs started building telephones.
The scientists went back to the leaders and said, "Some of you are going to die. Will the people who die need phones, too?"
"Don’t be silly," said the leaders. "Only the ones who survive will need a phone."
Stumped, the scientists approached the professors at the universities and asked them how they talk to each other. The professors had been using phones and told them so.
"So let’s get this right," the scientists said to the professors. "You talk over the telephone to each other. And if your phone stops working, and it would if a bomb hit, you would wait and use your phone later, when it works again?"
"That’s right," replied the professors.
The scientists then went to the leaders and said, "We it. We have your bomb-proof network!"
"We are going to use the commercial telecommunications infrastructure. It is reliable, because there are teams across the country working day and night to support it. When one section of it goes down, only that section is disabled. All the non-bombed areas are still working."
Excited, the leaders discussed among themselves their plans for the new network. But when they tried to predict how and when they would need it, they found that they would not.
So many scientists had focused for so long on building the bomb-proof network, that there were no more scientists working on bombs.



Selecting an ISP


There are many ways to obtain a connection to the Internet. There are an even greater number of companies that will help you obtain that connection. Selecting the right connection for your specific site's needs is key in maintaining a polished Web presence. To do that you will have to have some sort of relationship with a local or distant ISP.

Because of the anonymous features of the Internet, it is often difficult to tell what kind of operation an ISP is running until you actually use its service or visit its shop. For this reason, you will want to physically visit its facilities and meet their people before you invest much more than the cost of a dial-up account with them. On the outside, this may seem frivolous. However, one year of dedicated service can cost upwards of $3000. A few dollars, or even a few hundred dollars, is well-spent to ensure that you don’t pay for several thousand dollars worth of someone else’s mistakes.

Levels of Service

The level of service you require is not necessarily a case of "more is better." Very few people find the Internet useless, but not everybody needs a 10 megabyte-per-second Ethernet connection. Consider what your current needs are. When a dial-up connection costs $25 and dedicated access costs $250, you must assess what you truly require before going big.


Hint

If you are just getting started, consider a high-speed dial-up connection for a few months. This will give you time to see just what the heck the Internet is before you go trying to program over it.


Dial-Up

If you are managing a Web site on your ISP's server, you can do so with as little as a dial-up account. Your ISP will usually provide you with an FTP site where you can post your Web pages, images, and ActiveX controls and scripts.

You should be aware that you can operate a Web server over a dial-up connection, but only while you are online. When you log off, your server can no longer process requests from the Net.

Dedicated

If you operate your own servers, there are three major differences from having dial-up service. First, you will not need your ISP's Web server. Second, you will have a local drive on which to put your Web stuff—you can set it up for FTP or whatever type of access you desire. Third, and most important, your Web site will be up as long as your dedicated connection is working.

Summary


In this chapter you have been exposed to some of the issues confronting ActiveX Web site and network administrators in selecting and working with an Internet Service Provider. These issues include networking, hardware and software, and user-specific considerations.

You know that both a client and a server system must have a console with a CPU and a network connection, be it dedicated or dial-up. You also know that a dial-up connection is not very effective for running server software because the server will be disconnected whenever the dial-up session is concluded.

You have also learned about the different kinds of services that you may run on your server, such as FTP, News and e-mail. Each service is designed to fit a particular need, and you need only install the ones you want your users to be able to access, and which provide the best format for the delivery of your content.

You also know about some of the technical skills required of Web site administrators. Although they need not be specialists in hardware, software, or networking, they still need a general mix of all of those skills to maintain their systems. The real focus for the Web site administrator is on the content.

Finally, you learned a little about how to select an ISP by visiting its site and selecting a level of service.

Q&A



Workshop


Develop a brief plan of a Web site for a real or fictional company. Show the directory structure and which standard and ActiveX servers you would use. Identify what personnel are needed to develop and maintain the site.

Quiz



Note

Refer to the Appendix, "Answers to Quiz Questions," for the answers to these questions.

  1. What is the first thing you must do to set up a Web presence?

  2. What two hardware components are common to servers as well as standalone or client computers?

  3. What hardware features are generally associated with ActiveX servers and clients?

  4. How often does a dynamic IP address change?

  5. What is the benefit to having a static IP address?

  6. What three ways can be used by Me.Our.Net with an IP of 204.001.001.001 to refer to You.Our.Net with an IP of 204.001.001.002?

  7. What protocols are used to send and retrieve mail, respectively?

  8. What makes an NNTP server difficult to manage?

  9. What does a database server do?

  10. For what two types of customers do ISPs provide Internet Access services?

Previous Page Page Top TOC Next Page