File:  [LON-CAPA] / loncom / loncapa_apache.conf
Revision 1.181.2.3: download - view: text, annotated - select for diffs
Tue Dec 23 00:06:12 2008 UTC (13 years, 9 months ago) by raeburn
Branches: version_2_8_X
CVS tags: version_2_8_1, version_2_8_0, version_2_7_99_1, version_2_7_99_0, GCI_1
- Backport 1.183.

##
## loncapa_apache.conf -- Apache HTTP LON-CAPA configuration file
##
## $Id: loncapa_apache.conf,v 1.181.2.3 2008/12/23 00:06:12 raeburn Exp $
##

#
# LON-CAPA Section (extensions to httpd.conf daemon configuration)
#
# ================================================================ DocumentRoot

DocumentRoot "/home/httpd/html"

# ======================================================================== User

User www
Group www

# ======================================================= Shared Object Modules

LoadModule perl_module       modules/libperl.so
<IfDefine !MODPERL2>
AddModule mod_perl.c
</IfDefine>

<IfDefine MODPERL2>
PerlSetVar	MODPERL2	1
</IfDefine>
# =============================================================== Miscellaneous

ServerAdmin korte@lite.msu.edu
ExtendedStatus On
#
# LON-CAPA Section (extensions to srm.conf name space servicing)
#
# ===================================================================== Aliases

Alias /zipspool/ /home/httpd/zipspool/
Alias /prtspool/ /home/httpd/prtspool/
Alias /captchaspool/ /home/httpd/captchaspool/
ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/"

# ================================================================= Directories

# ------------------------------------------------------------- Access Handlers

PerlTransHandler	Apache::lontrans
PerlCleanupHandler	Apache::lonacc::cleanup

PerlAuthenHandler Apache::checkauthen
PerlSetVar lonOtherAuthen no

#PerlWarn On
<LocationMatch "^/+res/adm/pages/[^/]+\.(gif|png)$">
PerlAuthenHandler       'sub { return OK }'
</LocationMatch>

<LocationMatch "^/+res.*">

AuthType LONCAPA
Require valid-user

PerlAccessHandler      Apache::publiccheck
PerlAuthzHandler       Apache::lonacc
PerlHeaderParserHandler Apache::lonrep
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>


<LocationMatch "/.*">
</LocationMatch>


<LocationMatch "^/+enc.*">
SetHandler perl-script
PerlHandler       Apache::lonencurl
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<Location /adm/portfolio>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
SetHandler perl-script
PerlHandler Apache::portfolio
</Location>

<Location /adm/coursegrp_portfolio>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
SetHandler perl-script
PerlHandler Apache::portfolio
</Location>

<LocationMatch "^/+userfiles.*">
PerlAccessHandler       Apache::lontokacc
PerlCleanupHandler	Apache::lontokacc::removefile
PerlCleanupHandler	Apache::lonacc::cleanup
</LocationMatch>

<LocationMatch "^/+uploaded.*">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
PerlHandler 		Apache::londatecheck
PerlHandler  		Apache::lonipcheck
PerlHeaderParserHandler Apache::lonuploadrep
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/+editupload.*">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/+uploaded/.*/.*/internal/.*">
PerlAuthenHandler	Apache::lonuploadedacc
PerlAuthzHandler	Apache::lonuploadedacc::skip_phase
PerlAccessHandler	Apache::lonuploadedacc::skip_phase
</LocationMatch>

<LocationMatch "^/+uploaded/.*/.*/portfolio/.*">
PerlAccessHandler      Apache::publiccheck
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
</LocationMatch>

<LocationMatch "^/+uploaded/.*/.*/groups/.*/portfolio/.*">
PerlAccessHandler      Apache::publiccheck
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
</LocationMatch>

<LocationMatch "^/+uploaded/.*\.page$">
SetHandler perl-script
PerlHandler Apache::lonpage
</LocationMatch>

<LocationMatch "^/+uploaded/.*\.sequence$">
SetHandler perl-script
PerlHandler Apache::lonsequence
</LocationMatch>

<LocationMatch "^/+public/.*/syllabus$">
PerlAccessHandler      Apache::publiccheck
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::lonsyllabus
ErrorDocument     404 /adm/notfound.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/+(public|adm)/.*(\.rss|_rss\.html)$">
PerlAccessHandler      Apache::publiccheck
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::lonrss
ErrorDocument     404 /adm/notfound.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/.*/aboutme$">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::lonaboutme
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/notinit.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/.*/aboutme/portfolio$">
PerlAccessHandler       Apache::publiccheck
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::lonaboutme
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/notinit.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/.*/smppg$">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::londatecheck
PerlHandler		Apache::lonipcheck
PerlHandler             Apache::lonsimplepage
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/notinit.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/.*/bulletinboard$">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::londatecheck
PerlHandler		Apache::lonipcheck
PerlHandler             Apache::lonbulletin
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/notinit.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "\.problem/smpedit$">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler              perl-script
PerlHandler             Apache::lonsimpleproblemedit
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/notinit.html
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/+priv.*">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::loncacc
SetHandler        perl-script
PerlHandler       Apache::lonconstruct
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/+raw.*">
PerlAccessHandler Apache::lonracc
</LocationMatch>

<LocationMatch "^/+\~.*">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::loncacc
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/helper/.*\.helper$">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler  Apache::lonacc
SetHandler        perl-script
PerlHandler       Apache::lonhelper
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument     500 /adm/errorhandler
</LocationMatch>

<LocationMatch "/prtspool">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/roles
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "/zipspool">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/roles
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>
# ------------------------------------------------------------------------- RAT

<LocationMatch "^/\~.*\.sequence$">
SetHandler perl-script
PerlHandler Apache::lonratedt
</LocationMatch>

<LocationMatch "^/\~.*\.page$">
SetHandler perl-script
PerlHandler Apache::lonratedt
</LocationMatch>

<LocationMatch "^/\~.*\/ratserver$">
SetHandler perl-script
PerlHandler Apache::lonratsrv
</LocationMatch>

<LocationMatch "^/\~.*\/adveditmenu$">
SetHandler perl-script
PerlHandler Apache::lonratmenu
</LocationMatch>

<Location /adm/ratparms>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonratparms
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

# --------------------------------------------- Resource Space Content Handlers

<LocationMatch "^/+res.*/$">
SetHandler perl-script
PerlHandler Apache::lonindexer
PerlCleanupHandler Apache::lonindexer::cleanup
PerlCleanupHandler	Apache::lonacc::cleanup
</LocationMatch>

<LocationMatch "^/+(res|\~).*\.tex$">
SetHandler perl-script
PerlHandler Apache::lontex
</LocationMatch>

<LocationMatch "^/+res/.*\.page$">
SetHandler perl-script
PerlHandler Apache::lonpage
</LocationMatch>

<LocationMatch "^/+res/.*\.sequence$">
SetHandler perl-script
PerlHandler Apache::lonsequence
</LocationMatch>

<LocationMatch "^/+(res|\~|public|uploaded|editupload|adm).*\.meta$">
PerlAccessHandler      Apache::publiccheck
SetHandler perl-script
PerlHandler Apache::lonmeta
ErrorDocument     413 /adm/overloaded.txt
</LocationMatch>

<LocationMatch "^/adm/bombs/">
AuthType LONCAPA
Require valid-user
SetHandler perl-script
PerlAuthzHandler Apache::lonacc
PerlHandler Apache::lonmeta
</LocationMatch>



<LocationMatch "^/+(res|\~).*\.rights$">
SetHandler perl-script
PerlHandler Apache::lonrights
</LocationMatch>

<LocationMatch "^/+(uploaded|res|\~).*\.(xml|html|htm|xhtml|xhtm|sty)$">
SetHandler perl-script
PerlHandler Apache::londatecheck
PerlHandler Apache::lonipcheck
PerlHandler Apache::lonxml
</LocationMatch>

<LocationMatch "^/+(res|\~).*\.(task|problem|exam|quiz|assess|survey|form|library)$">
SetHandler perl-script
PerlHandler Apache::lonhomework
</LocationMatch>

<LocationMatch "^/adm/wrapper/">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
PerlHandler Apache::londatecheck
PerlHandler Apache::lonipcheck
SetHandler perl-script
PerlHandler Apache::lonwrapper
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/source">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonsource
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>


<LocationMatch "^/adm/localize/">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonlocalize
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

# -------------------------------------------------------------- Admin Programs

<Location /adm/randomlabel.png>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::randomlylabel
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/imagechoice>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::imagechoice
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/statistics>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonstatistics
ErrorDocument     403 /adm/login
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/trackstudent>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lontrackstudent
ErrorDocument     403 /adm/login
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/roles>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonroles
ErrorDocument     403 /adm/login
ErrorDocument     409 /adm/preferences?action=lockwarning
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/menu>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonmainmenu
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/remote>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonremote
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/pickauthor>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpickauthor
ErrorDocument     403 /adm/login
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/pickstudent>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpickstudent
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/pickcourse>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpickcourse
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/pickcode>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpickcode
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/login>
SetHandler perl-script
PerlHandler Apache::lonlogin
</Location>

<Location /adm/restrictedaccess>
PerlAccessHandler      Apache::publiccheck
AuthType LONCAPA
Require valid-user
SetHandler perl-script
PerlAuthzHandler       Apache::lonacc
PerlHandler Apache::restrictedaccess
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/blockedaccess>
PerlAccessHandler      Apache::publiccheck
AuthType LONCAPA
Require valid-user
SetHandler perl-script
PerlAuthzHandler       Apache::lonacc
PerlHandler Apache::blockedaccess
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/logout>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonlogout
ErrorDocument     403 /adm/login
ErrorDocument     409 /adm/preferences?action=lockwarning
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/switchserver>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::switchserver
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/authenticate>
SetHandler perl-script
PerlHandler Apache::lonauth
</Location>

<Location /adm/migrateuser>
SetHandler perl-script
PerlHandler Apache::migrateuser
</Location>

<Location /adm/annotations>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::admannotations
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/spellcheck>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonspeller
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/bookmarks>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::admbookmarks
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/flip>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpageflip
PerlCleanupHandler Apache::lonpageflip::cleanup
PerlCleanupHandler	Apache::lonacc::cleanup
ErrorDocument     406 /adm/roles
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/ambiguous>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonambiguous
PerlCleanupHandler Apache::lonambiguous::cleanup
PerlCleanupHandler	Apache::lonacc::cleanup
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/email>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonmsgdisplay
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/notify>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonnotify
ErrorDocument     403 /adm/login
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/parmset>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonparmset
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/slotrequest>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::slotrequest
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/wizard>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonwizard
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/grades>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::grades
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/createcourse>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::loncreatecourse
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/modifycourse>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonmodifycourse
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/domainprefs>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::domainprefs
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/domainstatus>
PerlAccessHandler       Apache::lonstatusacc
SetHandler perl-script
PerlHandler Apache::domainstatus
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/createuser>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::loncreateuser
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/publish>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpublisher
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<LocationMatch "^/+\~.*/$">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::loncacc
SetHandler perl-script
PerlHandler Apache::lonpubdir
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<Location /adm/pubdir>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpubdir
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/unauthorized>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonunauthorized
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/retrieve>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonretrieve
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/cleanup>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::loncleanup
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/cfile>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::loncfile
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/diff>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::londiff
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/upload>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonupload
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/imsimport>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::imsimport
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/testbank>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::testbankimport
ErrorDocument     403 /adm/login
ErrorDocument     404 /adm/notfound.html
ErrorDocument     406 /adm/unauthorized
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/assesscalc>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonspreadsheet
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/studentcalc>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonspreadsheet
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/classcalc>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonspreadsheet
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/dropadd>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::londropadd
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/viewclasslist>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonviewclasslist
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/coursegroups>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::loncoursegroups
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/groupboards>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::groupboards
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/grouproster>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::grouproster
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/whatsnew>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonwhatsnew
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/populate>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpopulate
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/managekeys>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonmanagekeys
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/printout>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonprintout
ErrorDocument     403 /adm/login
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/feedback>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonfeedback
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/coursedocs>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::londocs
PerlCleanupHandler Apache::londocs::untiehash
PerlCleanupHandler	Apache::lonacc::cleanup
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/imsimportdocs>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::imsimportdocs
ErrorDocument     403 /adm/login
ErrorDocument     500 /adm/errorhandler
</Location>

<LocationMatch "^/adm/announcements">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonannounce
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<Location /adm/chat>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonchat
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/chatfetch>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonchatfetch
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/groupchat>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::longroupchat
ErrorDocument     403 /adm/login
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/evaluate>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonevaluate
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/preferences>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonpreferences
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/communicate>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::loncommunicate
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/searchcat>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonsearchcat
PerlCleanupHandler Apache::lonsearchcat::cleanup
PerlCleanupHandler	Apache::lonacc::cleanup
ErrorDocument     403 /adm/login
ErrorDocument     413 /adm/overloaded.txt
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/navmaps>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonnavdisplay
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/quickgrades>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonquickgrades
ErrorDocument     403 /adm/login
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</Location>

<Location /adm/groupsort>
AuthType LONCAPA
Require valid-user
PerlAuthzHandler	Apache::lonacc
SetHandler perl-script
PerlHandler Apache::groupsort
PerlCleanupHandler Apache::groupsort::cleanup
PerlCleanupHandler	Apache::lonacc::cleanup
ErrorDocument     403 /adm/login
ErrorDocument	  500 /adm/errorhandler
</Location>

<Location /adm/errorhandler>
SetHandler perl-script
PerlHandler Apache::lonerrorhandler
</Location>

<LocationMatch "^/adm/help/.*\.hlp$">
AuthType LONCAPA
Require valid-user
PerlAccessHandler      Apache::publiccheck
PerlAuthzHandler	Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonhelp
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/helpmenu">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonhelpmenu
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/support">
AuthType LONCAPA
Require valid-user
PerlAuthzHandler       Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonsupportreq
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/helpdesk">
SetHandler perl-script
PerlHandler Apache::lonsupportreq
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/css">
SetHandler perl-script
PerlHandler Apache::loncss
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/coursecatalog">
SetHandler perl-script
PerlHandler Apache::coursecatalog
ErrorDocument	  500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/resetpw">
SetHandler perl-script
PerlHandler Apache::resetpw
ErrorDocument     500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/selfenroll">
SetHandler perl-script
PerlHandler Apache::selfenroll
ErrorDocument     500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/createaccount">
SetHandler perl-script
PerlHandler Apache::createaccount
ErrorDocument     500 /adm/errorhandler
</LocationMatch>

<LocationMatch "^/adm/dns">
SetHandler perl-script
PerlHandler Apache::londns
ErrorDocument     500 /adm/errorhandler
</LocationMatch>

# ------------------------------------------------- Backdoor Adm Tests/Programs

<Location /adm/test>
PerlAccessHandler Apache::lonstatusacc
SetHandler perl-script
PerlHandler Apache::lontest
</Location>

# ------------------------------------------------------- Shutting down a child

PerlChildExitHandler Apache::lonacc::goodbye

#
# LON-CAPA Section (extensions to access.conf permission configuration)
#
# =========================================================== Directory Options

# Start out with "no"

<Directory />
Options None
AllowOverride None
order deny,allow
deny from all
</Directory>

# Allow uploaded files to be served

<Directory "/home/httpd/lonUsers">
Options Includes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
</Directory>
 
# Allow construction space files to be served

<Directory "/home/*/public_html/" >
Options Includes FollowSymLinks
AllowOverride
order allow,deny
allow from all
</Directory>

# Yes to symbolic links and server-side includes

<Directory /home/httpd/html>
Options Includes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
</Directory>

# If it is in cgi-bin, then it can be executed as a CGI script.

<Directory /home/httpd/cgi-bin>
AllowOverride None
Options ExecCGI FollowSymLinks
order allow,deny
allow from all
</Directory>

# Allow serving of files in prtspool

<Directory "/home/httpd/prtspool/">
Options Includes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
</Directory>

# Allow serving of files in zipspool

<Directory "/home/httpd/zipspool/">
Options Includes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
</Directory>

# Allow serving of files in captchaspool

<Directory "/home/httpd/captchaspool/">
Options Includes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
</Directory>

# ============================================================= Access Handlers

# ------------------------------------------------- Allow server-status reports
<Location /server-status>
PerlAccessHandler Apache::lonstatusacc
SetHandler server-status
</Location>

# ------------------------ Allow LON-CAPA "low-level" connection status reports
<LocationMatch "^/+lon-status/.*">
PerlAccessHandler Apache::lonstatusacc
ErrorDocument     406 /adm/roles
ErrorDocument     500 /adm/errorhandler
</LocationMatch>

# ------------------- Allow access to local system documentation from localhost
Alias /doc /usr/doc
<Directory /usr/doc>
order deny,allow
deny from all
allow from localhost
Options Indexes FollowSymLinks
</Directory>

# ******** THESE "SHOULD" NEVER BE ALTERED BY THE USER ************************
# ====================================== Internal Settings / Perl Configuration

PerlSetVar	 lonVersion   '<!-- VERSION -->'
PerlSetVar       lonIDsDir    /home/httpd/lonIDs
PerlSetVar       lonTabDir    /home/httpd/lonTabs
PerlSetVar       lonUsersDir  /home/httpd/lonUsers
PerlSetVar       lonIconsURL  /adm/lonIcons
PerlSetVar       londPort     5663
PerlSetVar       lonSysEMail  korte@lite.msu.edu
PerlSetVar       lonDaemons   /home/httpd/perl
PerlSetVar       lonSockDir   /home/httpd/sockets
PerlSetVar       lonSockCreate   /home/httpd/sockets/common
PerlSetVar       lonDocRoot   /home/httpd/html
PerlSetVar       lonPrtDir    /home/httpd/prtspool
PerlSetVar       lonIncludes  /home/httpd/html/res/adm/includes
PerlSetVar       lonZipDir    /home/httpd/zipspool
PerlSetVar       lonCaptchaDir     /home/httpd/captchaspool
PerlSetVar       lonCaptchaDb     /home/httpd/captchadb 
PerlSetVar       lonFontsDir     /home/httpd/html/adm/fonts
# & separated list of : separated fields in order of
# - internal name to call it, 
# - regexp that it should match (done case-insensitively)
# - regexp that is should not match (done case-insensitively)
# - regexp that will pull out the version number into $1
# - a number that describes the minimum version that has mathml support
# - a number that describes the minimum number version that has unicode support

PerlSetVar       lonBrowsDet  explorer:msie:netscape:msie\s(\d+\.\d+)\;:9999:9999&mozilla:mozilla\/[5-9]:msie:mozilla\/(\d+\.\d+)\s:9999:1&netscape:netscape:msie:netscape\/(\d+\.\d+):9999:7&netscape:netscape\/[7-9]:shouldnotmatch:netscape\/(\d+\.\d+):9999:7&amaya:amaya:mozilla:V(\d+\.\d+)\s:1:1&safari:safari:msie:safari\/([\d\.]+):9999:84

PerlSetVar       lonTextBrowsers windows\s+ce:lynx
PerlSetVar       lonScansDir  /home/httpd/scantron
PerlSetVar       lonScriptTimeout 10
PerlSetVar	 BugzillaHost	http://bugs.lon-capa.org/
PerlSetVar	 FAQHost	http://help.lon-capa.org/
# -----------------------------------------------------------------------------
# NOTE: lonSqlAccess key is the password for the MySQL user
# www@localhost.  This value must always be "localhostkey".
# The only security risk occurs when somebody logs in as 'www' on your system
# (in which case you have much bigger problems than whether or not they
# can access the non-authoritative loncapa database on your machine).

PerlSetVar       lonSqlAccess   localhostkey

#----------------------------------------------------------------------------
#
#   Parameters used by secure lond/lonc

#
#   Secure lond/lonc require ssl certificate and private
#   key files to function correctly.  The certificate
#   files need not be terribly secure, but the private key files
#   should be set up so that only www (the lonc/lond effective user)
#   can read them.
# 
#   The definition below is the full path to the directory that
#   contains the certificate and key files:

PerlSetVar lonCertificateDirectory /home/httpd/lonCerts

#
#  Secure lond/lonc require two certificates and a private host key.
#  The certificates required are that of the lonCAPA certificate authority
#  and the certificate that authority issued to this host.
#  lonnetCertificateAuthority is the name of the file that contains the
#                            lonCAPA certificate authority's certificate.
#  lonnetCertificate is the name of the file that contains the certificate
#                    issued to the host by the certificate authority.
#  Both of these variables are names of files assumed to be in 
#  lonCertificateDirectory:

PerlSetVar lonnetCertificateAuthority loncapaCA.pem
PerlSetVar lonnetCertificate          lonhostcert.pem

#
#  To generate the request for a certificate, and to negotiate the
#  initial ssl connection, the host requires a private key.  This key
#  is created at lonCAPA install time.  Did we mention above that it
#  should be set so that only www can read it?  The variale below
#  is the name of the file relative to lonnetCertificateDirectory
#  that has the host's private key.  Did we remember to tell you to
#  keep the permissions on that file set to rw-------  (0600)?
#  

PerlSetVar lonnetPrivateKey         lonKey.pem

# Did we mention that the file described above must have
# permissions really locked down so that it can't be stolen?

#-------------------------------------------------------------------------

#   Parameters that define where all the ssl stuff is that's needed
#   to generate certificate requests and, on a system that's a CA
#   the certificate authority.
#    
#    SSLProgram    -> Path to the openssl command
#    SSLDirectory  -> Directory containing ssl configuration files etc.
#    SSLCAConfig   -> Name of the SSL config file for the certificate 
#                     Authority.
#    SSLCAFile     -> Full path to the Certificate authority file 
#                    (on the cert manager system).
#    SSLEmail      -> E-mail address of loncapa certificate manager.
#    The following are good for the loncapa redhat installs and
#    the loncapa certificate authority system:
#
PerlSetVar SSLProgram	/usr/bin/openssl
PerlSetVar SSLDirectory /usr/share/ssl
PerlSetVar SSLCAConfig  loncapaca
PerlSetVar SSLCAFile    /usr/share/ssl/loncapaca/cacert.pem
PerlSetVar SSLEmail     certificate@lon-capa.org

#-------------------------------------------------------------------------




# ====================================== Include machine-specific configuration

Include conf/loncapa.conf

# ================================================= Include local configuration

Include conf/loncapa_apache_local*.conf

# ================================================== Initiate mod_perl starting

PerlRequire      conf/startup.pl
<IfDefine !MODPERL2>
PerlFreshRestart On
</IfDefine>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>