CGS3994, Spring 1998, Assignment 3
Due Tuesday 3/3 at the start of class
Implement all of the following in either srm.conf or access.conf. Do not
implement the following in .htaccess files.
-
Hand in a printout of your srm.conf and access.conf files.
-
Send me an e-mail when your page is done. Include the password that you will
choose for me below. Include your mongoose user name in the e-mail, too.
-
Enable indexes for all directories.
-
Create a directory in your document root named ipaddress that only
allows access from the following IP addresses. In other words, even you won't
have access to this directory, just me!
131.94.130.21
131.94.125.142
-
Create a directory in your document root named valid that only allows
access from valid users. The only valid users will be me and thee.
-
Create a directory in server3994 named etc
-
cd ~/server3994/etc
-
Create the password file and an account for me. Give me the user name
downeyt. Choose a password for me. Include the password in the e-mail
that you send me.
/depot/http/bin/htpasswd -c passwd downeyt
after this you will enter a password for me, and then you will have to re-enter
it. Remember this password and include it in your e-mail to me. Notice that
the -c option creates the passwd file, deleting the file if it already exists,
so only use it once.
-
Add yourself to the passwd file. Select your own user name and password.
/depot/http/bin/htpasswd passwd downeyt
Notice that the -c option is not included when you add users to a passwd
file that already exists. If you use -c the second time, you will delete
me from the file.
-
The path to your passwd file will be
/home/mongoose2/users/user-name/server3994/etc/passwd, you will need
this in your access.conf file. Replace user-name with your mongoose
user name.
-
For the directory, the AuthName should be cgs3994, the AuthType should be
Basic and the AuthFile should be the path to your passwd file.
-
Add a mime type to your sever.
-
Edit the mime.types file in your conf directory and add a type for
text/x-your-name. Replace your-name with your name!
-
Make the extension your initials.
-
Create an icon for your new mime type and place it in your icons directory.
Suggestion: Convert an existing icon to a .bmp file using the convert
program on mongoose. Download the .bmp file and edit it to you hearts content
in PaintBrush or Paint. Then upload the modified icon to your
icons directory and use convert to change it to a .gif file.
-
Create an alias for your icons directory named /myicons/
-
Change the icon for your new mime type to your new icon using the new alias.
-
Add a virtual host to your server. Use the next sequential port to the one
you were assigned. The virtual host directive isn't working properly on mongoose,
so use the statement <VirtualHost *:port>, where port
is your new virtual host port number. Ignore the error message you get when
you restart the server.
-
Create a directory in server3994 that will be the document root for the virtual
host, different from the data directory, and not a subdirectory of
data.
-
Make the DirectoryIndex default.html
-
Make the UserDir www3994
-
Add two pages to the www3994 directory
-
home.html - a personal page in your original server
-
default.html - a personal page for the virtual host
-
If you view this directory in one server, you will get one page, if you view
it in the other server, you will see a different page.
-
Create a subdirectory of www3994 named mime
-
Create another new icon, different from the one you already created. Place
it in your icons directory.
-
Change the icon for your new mime type to this new icon on just the virtual
host. So, if you view this directory in your old server, you will see one
icon for the text file. If you view it in the virtual host, you will see
the other icon.
-
Add language encoding to your original server
-
Enable language negotiation on your original server, disable it on your virtual
host.
-
Create versions of a file named language.html file for English,
Spanish and German in the document roots of both servers. They don't have
to be in these languages, they should just mention the name of the language
they are supposed to be in. So make a header that identifies the language:
<h1>English</h1> or <h1>Spanish</h1> or
<h1>German</h1>.
-
Add a priority in case the browser doesn't specify a preference.
-
The original server should show you the correct page, depending on the language
specified. The virtual host should give you a 404 error.
-
Create your own error messages
-
Create a 404 html page for your original server
-
Create a 404 html page for your virtual host.