Business and Personal Web Hosting
Since 1997 - RSH Web Services

RSH Web Services
Web Hosting Imageweb hosting

RSH Web ServicesHOME
Personal HostingGETTING STARTED
Personal Pro HostingVIRTUAL ADMIN
Business HostingUSERS GUILD
Business Critical HostingF.A.Q.'S
Virtual Dedicated ServersOPTIONS
Discount Domain NamesSERVER CONFIG.
Reseller HostingTECHNOLOGY
Reseller ProgramUNIX vs WINDOWS
Contact UsCONTACT US
Compare Hosting PlansORDER NOW
RSH Web Services Site MapSITE MAP

30 day Unconditional

Money Back Guarantee


Customer Reviews

The value offered by RSH can't be found anywhere else. We have been with them since 1998 and will never change.
Rick H.
ClevelandSearch.com

Read More


PHP Hosting


The World's Leader in Virtual Server Technology

The HTTP / World Wide Web Service
pg. 10

The HTTP or World Wide Web service is by far the most well known and widely talked about Internet service available today. When most people refer to “surfing the Web,” or “going online,” what they are really talking about is accessing the HTTP service through their Web browser.
HTTP, which stands for Hyper Text Transfer Protocol, is the means by which text, images, sound, and other media are quickly transferred from a Web server to anyone in the world who has access to a Web browser.
Some of the most common files that are accessed through a Web browser include the following:
.html or .htm files  These files, more commonly referred to as Web pages, are written in a simple language called Hyper Text Markup Language (HTML).
.gif files  GIF files are graphics files that contain no more than 256 unique colors, and therefore load more quickly than JPEG images. Two popular types of GIF files are animated GIFs, which contain simple animation, and interlaced GIFs, which come through in layers of increasing detail.
.jpeg or .jpg files JPEG files are generally used for photographs and highly detailed artwork. Because they can contain up to 16 million colors, these graphics files generally take longer to transfer than do GIF files.
.mid or .midi files  MIDI (Musical Instrument Digital Interface) files are small files containing sequences of digital numbers that can reproduce simple musical tones and instruments.
.wav files These sound files contain digital information that can recreate sound waves and produce a wide variety of audio signals through a computer.
Many other types of files are also viewed or otherwise processed through Web browsers, and the list of media types continues to grow.

Setting Up Your virtual server’s HTTP Service
Your virtual server comes pre-configured with the Apache Web Server program installed as your HTTP server. From the moment your virtual server is turned on, it is providing HTTP services. The Apache Web server is very flexible and has many configuration options.
Depending on your needs, you may never need to make any changes to the configuration files that define how your HTTP service operates. On the other hand, if you use some of the more advanced features offered by your virtual server, you may wish to modify them often.
We have provided a lot of information about your Web service in this guide, and for most people, this should be sufficient. However, if you’re really ambitious and need even more information than we have provided, we suggest that you visit the Apache Web site at http://www.apache.org/ for extensive documentation on the subject.

Accessing Your virtual server through HTTP
Your virtual server has been assigned a unique IP address that identifies it from all other computers on the Internet. It looks something like 207.159.XXX.XX – a series of four numbers separated by dots. The exact numbers vary depending upon the physical location of your virtual server on our network. You received this IP address when your virtual server order was processed. You can access your virtual server at any time through a Web browser by typing your IP address into the address bar. This IP address may change from time to time to support our network infrastructure and growth.
Because you want your virtual server to be easily accessible, you likely registered a domain name to point to your computer’s IP address. If so, you can also access your virtual server using this domain name. Be aware, however, that if you are using a new domain name, or a domain name that previously pointed somewhere else, it may take several days before your domain name points to your virtual server properly. For more information about domain names and domain name services, please refer to the DNS Chapter.
Every file on every Web server on the Internet is also accessed through a unique address. These addresses, called Uniform Resource Locators or URLs, all follow the same format. All URLs start with a protocol type, followed by a domain name or IP address that identifies a computer, then the path to the file. For example, to access the home page of the RSH Web Services Web site, you would enter the following URL in your Web browser’s address bar:
http://www.rshweb.com/index.html
The http:// is the protocol definition, which means that you want to access the server’s HTTP service (as opposed to another service like FTP, email, or Telnet). In many browsers, you can simply omit the protocol definition because it assumes you want to use http:// if no other protocol is specified. Next comes www.rshweb.com, the computer name and domain name which points to the actual computer that houses the Web site. Finally, /index.html is the path to the file containing the HTML code that makes up the homepage of the web site. By default, if no file name is specified, your virtual server looks for a file called index.html. If no such file exists, it builds an index of all the files in the specified directory and displays this instead. This means that the page in this example could also be referred to as http://www.rshweb.com/, or even www.rshweb.com in most Web browsers.

Web publishing on your Virtual Server
You’re probably anxious to put up a nice looking, quality Web site. You have several options available to you as you decide how to create your site. The option you choose depends completely on you, your goals, interests, and resources. Some options are:
Learn about HTML and Web publishing yourself and use a text editor, HTML editor, and other tools to create your Web site.
Use a Web site creation tool such as Microsoft© FrontPage© , which helps you create documents in a “what you see is what you get” environment; translates your work into HTML code; and uploads your work to your virtual server automatically.
Hire an expert to create your Web site for you.
If you choose to learn HTML yourself and code your pages by hand, the best place to start is with a beginner’s HTML book or to learn about HTML through the Internet. One of the best ways to learn HTML is to use your browser’s View Source function to see the HTML code of existing Web sites that you find interesting. There are a wide number of resources available that can teach you everything you need to know. HTML is relatively simple and easy to learn.
One decision that you will need to make if you choose this option is which editor you will use. You can use the pico editor on your virtual server, a simple text editor like Windows NotePad, or a commercial HTML editor such as HomeSite. If you create and edit files on your desktop computer rather than through an online text editor, you’ll also need to use FTP to transfer them to your server.
If you would rather not learn HTML, but would still like to create your Web site yourself, a Web site creation tool like Microsoft© FrontPage© is a great alternative. FrontPage allows you to create, edit, and maintain your Web site in a graphical environment and transfer your site’s contents automatically without the use of FTP. If you choose this option, you’ll need to purchase FrontPage from Microsoft or your local software dealer, and install the FrontPage extensions on your virtual server.
Professional Web designers have extensive knowledge of HTML, as well as all the latest trends in Web site creation. Most produce very fast results. If you choose to hire a professional Web page designer to create your Web site for you, you will need to do one of the following:
Upload their content to your virtual server through FrontPage or FTP;
Create an FTP User account for them
Trust them with your administrative password; or
Provide them your administrative password and then change your administrative password once their work is complete.

Creating Web Pages on Your virtual server
The ~/www/htdocs directory is a special directory on your virtual server. It’s commonly referred to as the Document Root. Only the files and directories contained within this directory are accessible by the public through a Web browser. Therefore, if you create or own Web pages, or if you have someone else create them for you, they need to be placed in this directory before they will be available through your virtual server’s HTTP service.
When your virtual server was first set up, a very simple, generic home page named "index.html" was created for you in the ~/www/htdocs directory. With telnet log-in to your virtual server and type the following at the prompt
cd ~/www/htdocs Enter
Remember that ‘~’ is shorthand for your home directory, /usr/home/username/. In much the same way, the /www/ “directory” is actually a symbolic link to the usr/local/etc/httpd directory. Using these shorthand conventions together saves a lot of typing, as you can see by viewing the full path to the htdocs directory. Verify your location by typing pwd at the command prompt:
pwd Enter
That is a long path indeed!
Now, use the ls command to view the files and subdirectories in htdocs:
ls Enter
Note the index.html file. This is the file that houses your home page.
You can view the contents of the index.html file by using the more command. Type:
more index.html Enter
You will see the contents of this file, which is simply a text file written in HTML. Remember that the more command will wait for you to press the space bar before it scrolls past the limit of your screen, so continue pressing the space bar until the prompt appears. Depending on your experience with HTML, you may or may not understand the contents of the file that you just viewed. That’s OK; your Web browser is fluent in HTML and can make sense of the code even if you can’t. You don’t necessarily need to know HTML to create a great Web site, although it is a good idea to at least know what HTML looks like.
Next, take a look at how this page looks through a Web browser. Open your Web browser and enter either the IP address that your virtual server was assigned, or its domain name (if your domain name is already properly pointing to your server). You should see a simple Web page indicating that you’ve found the future home of your Web site. If you have trouble connecting to your virtual server in this way, you may need to contact your local Internet provider or the virtual servers support department for assistance. Use the pico editor on your virtual server to create a simple HTML file from scratch. Return to the command prompt and type:
cd ~/www/htdocs Enter
This command will take you to your document root regardless of where you currently are. To keep things tidy, create a test directory in your document root where you can store your Web page. Type:
mdkir test Enter
Move into this newly created directory by typing:
cd test Enter
You are now in the ~/www/htdocs/test directory.
Now, create a new .html file with the pico editor. Type:
pico test1.html Enter
This will start the pico editor and create an empty file called "test1.html." If you’ve never used the pico editor, you may want to refer to the Basic Unix Tutorial. Using the editor, type in the following lines:
<html>
<head>
<title>My First Web Page
</title>
</head>
<body>
This is my first Web page. I`m so proud.
</body>
</html>

When you’re finished, press Ctrl+X, Y, Enter to save the file and to exit the editor. Return to your Web browser and enter the following into the address bar, replacing 207.159.XXX.XXX with your IP address:
http://207.159.XXX.XXX/test/test1.html
You should see a very simple Web page containing the following text:
This is my first Web page. I’m so proud.
If this is what you see, you should indeed feel very proud! You’ve just created your first Web page on your virtual server in unix, and you should be starting to feel comfortable with UNIX, Telnet, the command prompt, your Web browser, and the way that your virtual server serves HTML documents. The “/test/” in the URL that you entered into your Web browser refers to the directory you just created in your document root using the mkdir command. The “test1.html” part refers to the name of the file you created with the pico editor. Congratulations! You’ve come a long way.
What would happen if you pointed your Web browser to this test directory, but did not specify the “test1.html” file? Try it and see. Put the following URL into your Web browser, substituting your IP address as you did before:
http://207.159.XXX.XXX/test/
You should see an index that was generated by your virtual server displaying the contents of this directory. The only file in the directory should be your test1.html file. If you click on this file with your mouse, your Web browser will show you the contents of the HTML file that you created. What if you wanted this file to come up automatically when you referred to the /test/ directory? Remember that by default, your virtual server will look for a file called “index.html” if no file name is specified in the URL. If a file with that exact name doesn’t exist, your virtual server builds its own index and displays that instead. You can see this in action by renaming your “test1.html” file as “index.html” using the mv command. Return to your command prompt and type:
mv test1.html index.html Enter
Now return to your Web browser and press the Refresh or Reload button. You should now see your homemade Web page being displayed. What happens if you try to access the test1.html file through your Web browser now? Try it by entering the URL http://207.159.XXX.XXX/test/test1.html. You should see a message that says that the file could not be found. Why? Because it no longer exists. That file was renamed as “index.html” using the mv command.
You’ve now learned the basics of Web publishing on your virtual server. In the next few sections, you’ll learn how to customize your virtual server’s HTTP service to make it do more powerful things.

Restricting Access to Files and Directories
In certain circumstances, you may want to restrict access to certain areas of your Web site to one person or a specific group of people. This section will show you how to restrict access to a certain directory based on a user name and password. You can also allow or deny access to areas of your Web site based on the IP address of the computer that is trying to access the site. Restricting access is a simple process that is done from the command prompt. If you’re using Microsoft FrontPage, there’s an even easier way to restrict access, which is explained in the FrontPage documentation.
Suppose you want to restrict access to the /test/ directory that you just created in your document root. The key to restricting access to specific directories is a file called .htaccess. An .htaccess file contains instructions about who can and cannot access files in a certain directory, and its instructions apply to that directory and all directories below it. Depending on what you put in the .htaccess file, you can allow or deny many types of access. The following sections describe the main types of access restriction.

Basic Password Restriction
The simplest and most common form of access restriction is to define a user name and password that your virtual server will require in order for someone to access the directory through a Web browser.
For this example, you'll restrict access so that the username "myuser" and the password "mypassword" are required in order to access the /test/ directory in your virtual server's document root.
The first step in basic password restriction is to use the htpasswd command to create a password file containing an encrypted, or scrambled, version of the password. The most common location for such a file is the ~/etc directory of your virtual server. To get there, type:
cd ~/etc Enter
Now, use the htpasswd command with the –c option to create a new password file. You only need to use the –c option if you're creating a new password file, which you are in this example. For this example we will call the new password file "test.pwd," although the name can be anything that is meaningful to you. To use the htpasswd command, you need to type the command, followed by the appropriate option, then the file that will contain the encrypted password, and then the username you wish to add to the password file. To do this for "myuser," type:
htpasswd -c test.pwd myuser Enter
You'll be prompted to enter a password twice. For this example, use mypassword as the password for this user. When you're done, a file called test.pwd will have been created in this directory. If you would like to see what it looks like, type
more test.pwd Enter
You'll see something like:
myuser:x2i8Pk9WufYJ
The garbled text next to the username is actually the password you chose, but it's understandable only by your virtual server. This helps protect your password from being discovered by unauthorized persons. It's important to remember that the –c option shown above should only be used when creating a new password file. If you want to add another entry to an existing password file, you need to omit the –c option, or you'll delete the existing password entries in the file.
Now that you have successfully created the password file, you're ready to create the .htaccess file. First, be sure you're in the directory that you want to protect.
For this example, create a directory called test in your Document Root (you may have already done so if you followed a previous example).
Then, cd into your ~/www/htdocs/test directory and type the following command:
pico .htaccess Enter
This will start the pico editor and create a new file called ".htaccess." Using the editor, carefully type the following lines:
AuthUserFile /etc/test.pwd
AuthName "This is a Protected Area"
AuthType Basic
<Limit GET>
require user myuser
</Limit>

The "AuthUserFile" line tells the Web server where the password file that protects this directory is located. The "AuthName" line contains the text that will be displayed in the password box that pops up in your Web browser when you try to access this page. Note that the AuthName must be surrounded in quotes. The "AuthType" should always be set to Basic. The "Limit" area contains the specific instructions as to how you want to limit access to this directory. First of all, you're limiting "GET" access, which is the standard way in which Web browsers "get" files from a Web server. Next, you're telling your Web server that in order to access the files in this directory, you're requiring that the username be "myuser."
After typing this all in, be sure to press Enter a couple of times at the end of these lines. When you're done, press Ctrl+X, Y, Enter to save the file and to exit the editor. That's it! From now on, when you try to access this directory through your Web browser, you will be required to enter the specified user name and password.

Multiuser Password Restriction
Suppose that instead of granting access only to a single username and password, you wanted to grant access to a group of users with their own passwords. This is done in a similar manner as the single password protection method described above. However, you will also need to create a user group file, and there are some minor differences in the contents of your .htaccess file.
For this example, assume that you want to give access to three different users, named "user1," user2," and "user3." You want "user1" to have access with the password "password1," "user2" to have access with "password2," and "user3" to have access using "password3." The first step would be to use the htpasswd command to create a password file containing encrypted versions of all three of these passwords. The most common location for a password file is in the ~/etc directory of your virtual server. To get there, type:
cd ~/etc Enter
Now, create the password file. For this example we will call it "test2.pwd," although the name can be anything that is meaningful to you. Type:
htpasswd –c test2.pwd user1 Enter
You'll be prompted to enter a password twice. For this example, use "password1" as the password for this user. When you're done, a file called test2.pwd will have been created in this directory. Now, you'll want to add entries in this file for "user2" and "user3." You'll need to use the htpasswd command again to do this, but this time you won't use the –c option to create a new password file, since the password file already exists. If you did use the –c option, it would create a new file over the top of the old one, erasing the entry you just made for "user1." Type:
htpasswd test2.pwd user2 Enter
This time, type "password2" when prompted for a password. When your prompt returns, type:
htpasswd test2.pwd user3 Enter
Enter "password3" as the password. Your password file is now complete. If you would like to see what it looks like, type:
more test2.pwd Enter
Your next step is to create the user group file. This file defines the group of users that will have access to the test directory. This saves you from having to include the name of every member of the group in the .htaccess file in every restricted directory on your Web server. If you plan on restricting more than one area, then using a group file is a smart thing to do. Like password files, the most common place for a group file is in the ~/etc directory. A group file simply contains one or more groups of users that you will later authorize to have access. For this example, create a group file called "test2.grp," and define a group called "users" that contains "user1," "user2," and "user3." To do this, type:
pico test2.grp Enter
Now that you're in the pico editor, type the following line and press Enter a couple of times:
users: user1 user2 user3
When you're finished, press Ctrl+X, Y, Enter to exit the editor and to save the file. The group file "users" has been created.
If you later want to define additional groups in this same file, simply add a new line and add another line for the additional group. It is important to keep all the users that belong to a single group on the same line. They can not be wrapped around onto more than one line.
The last step in this example is to create or modify the .htaccess file in the directory that you want to protect. In this case, you're protecting the directory called "test" in the document root (see previous example), so you'll need to edit the .htaccess file located there. Type:
cd ~/www/htdocs/test Enter
pico .htaccess Enter

You'll either see the existing .htaccess file that you created in the example from the previous section, or a new blank file if you skipped straight to this example. In either case, you should use the pico editor to make this file look like the following:
AuthUserFile /etc/test2.pwd
AuthGroupFile /etc/test2.grp
AuthName "Enter Your Password"
AuthType Basic
<Limit GET>
require group users
</Limit>

Press Ctrl+X, Y, Enter to exit the editor and to save the file. Access to this directory is now restricted to the users that appear in the group file. Each user is required to enter his matching password that is encrypted in the password file. Try accessing this directory through your Web browser now by pointing your browser to http://yourdomain.com/test/ and you should be asked for a username and password.

Creating Custom Error Pages
There are many possible reasons why your virtual server may return an error page. The most common are summarized in the following table:

Error Code Error Type What Causes the Error
403 Access Denied A user tried to access a file or directory that they did not have permission to access.
404 File Not Found A file was requested that does not exist.
500 Internal Server Error For any of a number of reasons, the server encountered some type of error.

First, log in to your Virtual Server. Move to the document root by typing:

cd ~/www/htdocs Enter

Create a directory to contain your error pages by typing:

mkdir errordocs Enter

Next, you should create any custom error pages that you want to use and place them in this directory. They do not have to be placed in the "errordocs" directory, and can be placed in any directory you wish, as long as it is in or below the document root. This example, however, will assume they are in the ~/www/htdocs/errordocs directory.

Finally, you will need to edit the vhosts.conf file which resides in the ~/www/conf directory of your server. This file contains several important settings for your Virtual Server, so you should make a backup copy before editing it. From the command prompt, type:

cd ~/www/conf Enter

cp vhosts.conf vhosts.conf.bak Enter

pico vhosts.conf Enter

You will then see the pico editor open up your vhosts.conf file. Using your down arrow key, scroll down near the end of this file until you see a section that looks something like the following:

<VirtualHost *:80 *:443>
ServerName yourdomain.com
ServerAlias www.yourdomain.com
ServerAdmin webmaster@yourdomain.com
TransferLog /usr/local/apache/vhosts/yourdomain.com/logs/access_log
ErrorLog /usr/local/apache/vhosts/yourdomain.com/logs/error_log
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
DocumentRoot /usr/local/apache/vhosts/yourdomain.com/htdocs
ScriptAlias /cgi-bin/ /usr/local/apache/vhosts/yourdomain.com/cgi-bin/
<Directory "/usr/local/apache/vhosts/yourdomain.com/htdocs">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<Directory "/usr/local/apache/vhosts/yourdomain.com/cgi-bin">
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

You should add the following lines between the <VirtualHost></VirtualHost> tags:

ErrorDocument 500 /errordocs/internalerror.html
ErrorDocument 404 /errordocs/filenotfound.html
ErrorDocument 403 /errordocs/accessdenied.html

Like this:

<VirtualHost *:80 *:443>
ServerName yourdomain.com
ServerAlias www.yourdomain.com
ServerAdmin webmaster@yourdomain.com
TransferLog /usr/local/apache/vhosts/yourdomain.com/logs/access_log
ErrorLog /usr/local/apache/vhosts/yourdomain.com/logs/error_log
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
DocumentRoot /usr/local/apache/vhosts/yourdomain.com/htdocs
ScriptAlias /cgi-bin/ /usr/local/apache/vhosts/yourdomain.com/cgi-bin/
ErrorDocument 500 /errordocs/internalerror.html
ErrorDocument 404 /errordocs/filenotfound.html
ErrorDocument 403 /errordocs/accessdenied.html
<Directory "/usr/local/apache/vhosts/yourdomain.com/htdocs">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<Directory "/usr/local/apache/vhosts/yourdomain.com/cgi-bin">
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

You would now simply need to exit pico and save the file by pressing Ctrl+X, Y, Enter. To see your custom error pages in action, try pointing your Web browser to an address like http://www.yourdomain.com/blah.html to test your custom "File Not Found" error message, or go to http://www.yourdomain.com/cgi-bin/ v see your new "Access Forbidden" page.

Note: Your custom error page may not display when viewed with Microsoft's Internet Explorer 5 browsers. 

Force IE5 to display your 404 and not its own

As you may know, version 5 of Internet Explorer has its own 'friendly' error messages built in, so that you don't have to look at the ugly standard 404. However, some people who have designed their own custom 404s have found that IE is still ignoring their page and displaying its own message, which is likely not quite as helpful as the custom error. Silly Microsoft, always trying to do our thinking for us. Here's how to get around it - and it's simple!

IE looks at the size of the 404 page to decide whether to display its own error. All you have to do is make sure that the size of your file is greater than 512 bytes. If you just add a graphic, you'll be well over that size.


Virtual Server Lite

Virtual Server Standard

Virtual Server Pro

Virtual Server Ultra

400 megs

1000 megs

1500 megs

6000 megs

Details

Details

Details

Details

Order

Order

Order

Order



RSH Web Services