~Home is an ISAPI filter dll that will map a URL request that specifies a ~username to the user's home directory. The home directory is defined in the User Manager.
The home directory can be anywhere:
For example let's say that your web root is c:\webroot\ and there is a user named "Joel" who has his home directory in e:\homedir\joelhome\ and he has a home page called home.htm in his home directory. You could access his homepage (assuming permissions have been correctly applied) with:
There is no need to create a virtual directory for each of your users. By virtue of a user having a home directory they have access to it by means of the ~user syntax.
Back to the top
There is an advanced version of ~Home which allows the administrator to designate more than just the user's home directory. It can be configured to access:
Additionally a post-path can be specified granting internet access into a subdirectory of the user's home directory. This allows each user to have a "Web" (or some other) subdirectory located in his home directory. There the user can place any pages to be accessed from the web.
The advanced version also supports:
For more information contact us.
The freeware version of The ~Home ISAPI filter can be found at the Roth Consulting FTP site: ftp://ftp.roth.net/pub/isapi/ For pricing on the advanced version of The ~Home ISAPI filter contact us.
Just like any other file in your IIS based web you can apply permissions on the user's home directory or files within it that will restrict or allow access from the web. If access is restricted a web browser will be asked to provide userid and password.
You can change the access token. By default it is the slash-tilde (/~) but it does not have to be. It can be anything. You could change it to be "/home/" so that user Joel's home directory can be accessed by:
http://your.web.server/home/joel/ or it could be changed to an explanation point (!): http://your.web.server/this/path/does/not/matter/home!joel/
Not at all! All you need to do is alter a single registry entry then access the token reload page: http://your.computer.name/~reloadtoken (note the /~ needs to be whatever the current access token is)
If you would rather you can turn off the online update capability.
1) Install the filter in the registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SRV\Parameters\Filter DLLs Add to the END of this string... c:\path_to_filter\Home.dll An example of what it may look like is:"c:\net\httpd\sspifilt.dll,c:\net\httpd\isapi\test\home.dll"
2) Create a new Key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SRV\Home
3) Add the following values to this new key:
HomeToken : REG_SZ : /~ Updates : REGDWORD : 0x01
Once that ~Home has been installed you can configure it by specifying a different Home Access Token and/or changing the ability to dynamically update the token online. This is done by altering the following registry entries:
All you need to do is change the value of one registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SRV\Home\ Updates : REGDWORD : 0x00
Then stop and start the web services.