To create a home page using html, just create a directory called http in the top level of your home directory and make it world readable:
mkdir ~/http chmod a+r http
Now when you go to your homepage www.shadlen.org/~username you will see a directory of the files in this folder. If you create an html file called index.htm, this page will show up instead of the directory listing.
If you would like to create a personal wiki, please contact the sysadmin to give you the necessary files.
When you want to have web pages protected by a password, you have two choices. First choice is you can put stuff in an https folder in your home directory. This makes use of the ldap server, so in order to see stuff in this folder, you must have and use a shadlen user account. There will not be a directory of files that shows up automatically, so you should use a direct link, ie. to see the file, mysecret.doc, which is in the top level of your https directory, use the url https://www.shadlen.org/mysecret.doc. This works well for stuff you only want other people in the lab to see, but if you want to share a document with people outside of the lab, you need to set up a special username/password, and use the regular http directory. It will not be as secure as using ldap (still relatively secure), but you will be able to give out the username/password to people outside of the lab. To do this, you will set up a special subdirectory in your http directory for your secure files (you can make several different directories, using the same or different username/passwords, as you will see below). So, to make the directory http/secretfiles secure, create a file .htaccess (make sure to start it with a period) in this directory. The file will look something like this:
AuthUserFile /home/myhome/.htpasswd AuthGroupFile /dev/null AuthName EnterPassword AuthType Basic require user eye
The first line, AuthUserFile refers to the file that will contain the password for the directory. This file should definitely NOT be in a directory accessible by the web. AuthGroupFile, AuthName, and AuthType will be exactly the same as above. Eye will be replaced with whatever username you want to use for access (guest is commonly used, for example). Once this file has been created, you need to create (or add to) the .htpasswd file to include the password for this directory. The .htpasswd file will also start with a period, and will be in the directory defined by AuthUserFile in .htaccess. The contents will look something like this:
eye:jkl7i3209 guest:homw3/w66
Each readable word corresponds to a username found in an .htaccess file. This file (and thus the passwords) can be generated by the command (don't just copy the above file or try to make up passwords and edit the file itself, as the passwords will be nonsense):
htpasswd /home/myhome/.htpasswd username=newuser
This command will ask you for a password, encrypt the password, and make a new line in the .htpasswd file. If you don't already have a .htpasswd file, use the -c option to create the file:
htpasswd -c /home/myhome/.htpasswd username=newuser (Only use this option if the passwdfile does not already exist, because if it already exists, it will be rewritten and truncated.)
Make sure that all of the files are world-readable, even the password file. The password will still be protected, because you have put it in a directory that is not accessible from the web, and the password is encrypted.
Now you can only see what is in the directory from a web browser if you know the correct username/password combination.