################################################################################ # WeBWorK Online Homework Delivery System # Copyright © 2000-2003 The WeBWorK Project, http://openwebwork.sf.net/ # $CVSHeader: webwork-modperl/conf/httpd-wwmp.conf.dist,v 1.12 2003/12/28 22:33:33 gage Exp $ # # This program is free software; you can redistribute it and/or modify it under # the terms of either: (a) the GNU General Public License as published by the # Free Software Foundation; either version 2, or (at your option) any later # version, or (b) the "Artistic License" which comes with this package. # # This program is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # FOR A PARTICULAR PURPOSE. See either the GNU General Public License or the # Artistic License for more details. ################################################################################ # The best way to turn this into a working webwork server config file is to do # a global find/replace on the following strings: # !WEBWORK_ROOT! -> the root of your personal webwork2 tree # !WEBWORK_USER! -> your user name # !WEBWORK_PORT! -> the port on which you want to run this server # (please use 10000 + your UID) # !PG_ROOT! -> the root of your personal pg tree # !COURSES_ROOT! -> the root of courses tree # # After those find/replace operations, you should edit the access control # statements at the bottom of this file. Include !WEBWORK_ROOT!/conf/httpd-wwmp-header.conf Port !WEBWORK_PORT! User !WEBWORK_USER! Group !WEBWORK_USER! ServerAdmin !WEBWORK_USER!@localhost LockFile !WEBWORK_ROOT!/logs/httpd.lock PidFile !WEBWORK_ROOT!/logs/httpd.pid ErrorLog !WEBWORK_ROOT!/logs/error.log # On systems that use it, ScoreBoardFile must be different for different # invocations of Apache. webwork-dev doens't appear to be one of those # systems. #ScoreBoardFile /var/run/httpd.scoreboard PerlFreshRestart On SetHandler perl-script PerlHandler Apache::WeBWorK PerlSetVar webwork_root !WEBWORK_ROOT! PerlSetVar pg_root !PG_ROOT! use lib '!WEBWORK_ROOT!/lib'; use lib '!PG_ROOT!/lib'; # We're limiting the number of children because we'll be running a lot and # don't want to bog the development box down. StartServers 2 MinSpareServers 2 MaxSpareServers 2 MaxClients 150 # How "old" a child is allowed to get. 0 for unlimited requests # Pick a low number -- you're bound to screw something up, right? MaxRequestsPerChild 100 # This DocumentRoot doesn't actually make a lot of sense. In a # WeBWorK mod_perl system, there is no static document root, but the # DocumentRoot does have to exist, and not have a subdirectory # named "webwork2". It suffices. # If no document root is defined by the webserver, you can uncomment the line below # DocumentRoot "!WEBWORK_ROOT!/htdocs" # These aliases are important. # The segment !COURSES_ROOT! should be replaced by the full path reference # to the location where your courses are stored. # The AliasMatch directive directs to files stored in the html directory of each course. AliasMatch ^/webwork2_files/courses/([^/]*)/(.*) !COURSES_ROOT!/$1/html/$2 # The alias directive redirects to the toplevel material in the global webwork2/htdocs directory Alias /webwork2_files/ !WEBWORK_ROOT!/htdocs/ # This sets the permissions on the toplevel webwork2/htdocs directory # This should match the DocumentRoot Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all # Possible forms of access limitation (edit to taste) # The developer maintains a personal htpasswd file # # AuthType Basic # AuthName "!WEBWORK_USER!'s WeBWorK development system" # AuthUserFile !WEBWORK_ROOT!/conf/htpasswd # Require valid-user # # There is a site-wide htpasswd file somewhere, with all developers in it # # AuthType Basic # AuthName "!WEBWORK_USER!'s WeBWorK development system" # AuthUserFile /path/to/site/htpasswd/file # Require valid-user # # You have mod_pam_auth and would like to authenticate against your /etc/passwd # file. (NOTE: It is a good idea to use Digest authentication instead of Basic, # even though this limits your choice of browsers, because of the heightened # sensitivity of normal system passwords.) # # AuthType Digest # AuthName "!WEBWORK_USER!'s WeBWorK development system" # AuthPAM_Enabled on # Require valid-user ## Require group wwdev #