Nixsys Public Access UNIX System

Web Hosting:



Another feature distinguishing Nixsys PAUS from other free and commercial service providers is the wealth of options presented by the web hosting system. All users have access to MySQL®, PERL, PHP, Python, and SSIs. Users also have the ability to host subdomains on, create .htaccess files, and have customized error logs and error documents. With the current configuration the system supports, almost anything is possible.

Apache Modules

The list below contains the Apache server modules that are supported by this system. If a module is not listed here, it's most likely not supported. Current list of supported modules is:

Core Apache HTTP Server features that are always available
Provides access control based on client hostname, IP address, or other characteristics of the client request
This module provides for executing CGI scripts based on media type or request method
Provides for mapping different parts of the host filesystem in the URL redirection
Sends files that contain their own HTTP headers
User authentication using text files
Provides for user authentication using DBM files
User authentication using MD5 Digest Authentication
CERN httpd metafile semantics
Execution of CGI scripts
Compress content before it is delivered to the client
Provides for "trailing slash" redirects and serving directory index files
Modifies the environment which is passed to CGI scripts and SSI pages
Generation of Expires and Cache-Control HTTP headers according to user-specified criteria
Pass the response body through an external program before delivery to the client
Customization of HTTP request and response headers
Server-parsed html documents (Server Side Includes)
Logging of the requests made to the server
Forensic Logging of the requests made to the server
Associates the requested filename's extensions with the file's behavior (handlers and filters) and content (mime-type, language, character set and encoding)
Determines the MIME type of a file by looking at a few bytes of its contents
Provides for content negotiation
Provides a rule-based rewriting engine to rewrite requested URLs on the fly
Allows the setting of environment variables based on characteristics of the request
Loading of executable code and modules into the server at start-up or restart time
Strong cryptography using the Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols
Allows CGI scripts to run as a specified user and Group
Provides an environment variable with a unique identifier for each request
Clickstream logging of user activity on a site
Provides for dynamically configured mass virtual hosting
Implements a non-threaded, pre-forking web server


All users, by default, have a cgi-bin directory created in their public webspace. This directory may be used to run PERL scripts, shell scripts, and other programs used to dynamically generate content. Users are reminded to be responsible when allowing CGIs to be publically accessible. Careful testing must be done to check whether or not a Denial of Service could be caused. There are many other sites hosted on this system, and they should not be comprimised for another's carelessness.

Customized Error Pages

Those hosting subdomains and / or domains on this system have the privilege to create customized error pages. This allows sites to have error messages configured to individual needs. If an error is encountered on a site hosted by this system and users choose not to customize their error pages, the client will be redirected to the default system-wide error document. Users who wish to utilize the functionality of customized error pages should send a request to the Webmaster: webmaster -AT- nixsyspaus -DOT- org.

Directory Index

This system does not support Apache's mod_autoindex, which "generates directory indexes, automatically, similar to the Unix ls command or the Win32 dir shell command". Users intending to have a directory accessible via a URL will need to create an index file in that directory and go from there. There is a precedence to the index file names. They are processed in this order:

  1. index.cgi
  2. index.shtml
  4. index.php
  6. index.xml
  7. index.xhtml
  8. index.html
  9. index.wml

Logging Capabilities

Configuring logging functions on a per virtual host basis perfoms a few useful tasks. Most importantly, it allows users to debug errors in their web sites (without those errors being shown publicly - a good security feature), monitor site traffic, have more privacy, and many other things. However, this feature needs space under the user's web quota, which is good for the main web server (as its resources aren't being used), but can quickly spend the user's web quota if not monitored, rotated, and archived.

Two mechanisms are available for web log file rotation. One is a program, bundled with the The Apache HTTP Server, called rotatelogs. The other is a software package, installed from The NetBSD Packages Collection (pkgsrc), called cronolog. Users are encouraged to examine the documentation on both utilities before requesting logging capabilities for their web sites.

Logging is not enabled by default, as it requires space on the user's quota, but can be enabled / disabled at any time with a request to the administration. A list of archivers supported on this system can be found at the Archivers Section of this site. More information regarding logging functions is available on the Apache Log Files page.


Please view the DBMS section of the website to understand how connections to the MySQL Database Server are made.


The path to PERL is /usr/pkg/bin/perl. All PERL scripts run as your userid and groupid and must have read and execute bits set for the owner and group (if the file's GID is equal to that of the webserver; i.e.: `chmod 750`) or all read and execute bits set (if the file's GID is not equal to that of the webserver; i.e.: `chmod 755`). Scripts do not need to be located in the user's cgi-bin directory, unless the file is being run as a CGI script.


On this system, PHP runs in Safe Mode. Persistent connections to the MySQL database server are not allowed. The full file system path to included documents must be used instead of relative paths. Otherwise, scripts will not be able to locate the included file. Using the short open tag for PHP scripts is currently disabled. This means scripts must begin like so:
as opposed to:
Supported modules include:

There are also a handful of PEAR modules supported.


Files intended for use as SSIs must have an extension of .shtml to be parsed by the server. These files cannot run the "exec" command.

Additional Notes

MySQL is a registered trademark of MySQL AB in the United States, the European Union, and other countries.

Back to the top!