--- loncom/loncapa_apache.conf 2009/08/05 00:15:15 1.187
+++ loncom/loncapa_apache.conf 2017/02/23 21:32:15 1.252
@@ -1,8 +1,8 @@
##
## loncapa_apache.conf -- Apache HTTP LON-CAPA configuration file
##
-## $Id: loncapa_apache.conf,v 1.187 2009/08/05 00:15:15 raeburn Exp $
-##
+
+# $Id: loncapa_apache.conf,v 1.252 2017/02/23 21:32:15 damieng Exp $
#
# LON-CAPA Section (extensions to httpd.conf daemon configuration)
@@ -18,7 +18,9 @@ Group www
# ======================================================= Shared Object Modules
-LoadModule perl_module modules/libperl.so
+
+ LoadModule perl_module modules/libperl.so
+
AddModule mod_perl.c
@@ -28,7 +30,7 @@ PerlSetVar MODPERL2 1
# =============================================================== Miscellaneous
-ServerAdmin korte@lite.msu.edu
+ServerAdmin consortium@loncapa.org
ExtendedStatus On
#
# LON-CAPA Section (extensions to srm.conf name space servicing)
@@ -38,7 +40,11 @@ ExtendedStatus On
Alias /zipspool/ /home/httpd/zipspool/
Alias /prtspool/ /home/httpd/prtspool/
Alias /captchaspool/ /home/httpd/captchaspool/
+Alias /webdav/ /home/httpd/html/priv/
ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/"
+
+ DAVLockDB /home/httpd/webdav/DAVLock
+
# ================================================================= Directories
@@ -50,9 +56,22 @@ PerlCleanupHandler Apache::lonacc::clean
PerlAuthenHandler Apache::checkauthen
PerlSetVar lonOtherAuthen no
+
+ PerlAuthenHandler Apache::lonshibauth
+ PerlSetVar lonOtherAuthen yes
+ PerlSetVar lonOtherAuthenType Shibboleth
+
+
#PerlWarn On
-PerlAuthenHandler 'sub { return OK }'
+PerlAuthzHandler 'sub { return OK }'
+
+
+# Send proper expires header to avoid unnecessary HTTP request for static content
+
+ ExpiresActive On
+ ExpiresDefault "access plus 12 hours"
+ Header set Cache-Control "public, no-transform"
@@ -99,17 +118,24 @@ SetHandler perl-script
PerlHandler Apache::portfolio
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonpdfupload
+ErrorDocument 403 /adm/login
+ErrorDocument 404 /adm/notfound.html
+ErrorDocument 406 /adm/roles
+ErrorDocument 500 /adm/errorhandler
+
+
PerlAccessHandler Apache::lontokacc
PerlCleanupHandler Apache::lontokacc::removefile
PerlCleanupHandler Apache::lonacc::cleanup
-
-SetHandler perl-script
-PerlHandler Apache::lonpdfupload
-
-
AuthType LONCAPA
Require valid-user
@@ -244,32 +270,77 @@ ErrorDocument 406 /adm/notinit.html
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
-PerlAuthzHandler Apache::loncacc
-SetHandler perl-script
-PerlHandler Apache::lonconstruct
-ErrorDocument 403 /adm/login
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::londatecheck
+PerlHandler Apache::lonipcheck
+PerlHandler Apache::lonexttool
ErrorDocument 404 /adm/notfound.html
-ErrorDocument 406 /adm/unauthorized
-ErrorDocument 500 /adm/errorhandler
+ErrorDocument 406 /adm/notinit.html
+ErrorDocument 500 /adm/errorhandler
-
-PerlAccessHandler Apache::lonracc
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonplacementtest
+ErrorDocument 404 /adm/notfound.html
+ErrorDocument 406 /adm/notinit.html
+ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::loncacc
+SetHandler perl-script
ErrorDocument 403 /adm/login
ErrorDocument 404 /adm/notfound.html
ErrorDocument 406 /adm/unauthorized
ErrorDocument 500 /adm/errorhandler
+
+
+
+ AuthType Basic
+ AuthName "LONCAPA username,domain"
+ Require valid-user
+ SSLRequireSSL
+ PerlAuthenHandler Apache::lonwebdavauth
+ PerlAuthzHandler Apache::lonwebdavacc
+ Dav On
+ DirectoryIndex index.missing
+ Options Indexes FollowSymLinks
+ ErrorDocument 403 /adm/nowebdav.html
+ ErrorDocument 404 /adm/notfound.html
+ ErrorDocument 406 /adm/unauthorized
+ ErrorDocument 500 /adm/errorhandler
+
+
+
+ RewriteEngine on
+ RewriteRule .* http://%{HTTP_HOST}/adm/nowebdav.html [L]
+
+
+
+
+
+ RewriteEngine on
+ RewriteRule .* http://%{HTTP_HOST}/adm/nowebdav.html [L]
+
+
+
+
+
+PerlAccessHandler Apache::lonracc
+
+
AuthType LONCAPA
Require valid-user
@@ -305,22 +376,22 @@ ErrorDocument 500 /adm/errorhandler
# ------------------------------------------------------------------------- RAT
-
+
SetHandler perl-script
PerlHandler Apache::lonratedt
-
+
SetHandler perl-script
PerlHandler Apache::lonratedt
-
+
SetHandler perl-script
PerlHandler Apache::lonratsrv
-
+
SetHandler perl-script
PerlHandler Apache::lonratmenu
@@ -344,7 +415,7 @@ PerlCleanupHandler Apache::lonindexer::c
PerlCleanupHandler Apache::lonacc::cleanup
-
+
SetHandler perl-script
PerlHandler Apache::lontex
@@ -359,7 +430,7 @@ SetHandler perl-script
PerlHandler Apache::lonsequence
-
+
PerlAccessHandler Apache::publiccheck
SetHandler perl-script
PerlHandler Apache::lonmeta
@@ -369,35 +440,122 @@ ErrorDocument 413 /adm/overloaded.tx
AuthType LONCAPA
Require valid-user
-SetHandler perl-script
PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
PerlHandler Apache::lonmeta
-
+
SetHandler perl-script
PerlHandler Apache::lonrights
-
+
SetHandler perl-script
PerlHandler Apache::londatecheck
PerlHandler Apache::lonipcheck
PerlHandler Apache::lonxml
-
+
SetHandler perl-script
PerlHandler Apache::lonhomework
-
+
SetHandler perl-script
PerlHandler Apache::lonxml
+
+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
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+ErrorDocument 403 /adm/login
+ErrorDocument 404 /adm/notfound.html
+ErrorDocument 406 /adm/unauthorized
+ErrorDocument 500 /adm/errorhandler
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxepage
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxepage
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxeopen
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxeopen
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxeopen
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxeopen
+
+
+
+SetHandler perl-script
+PerlHandler Apache::daxeopen
+
+
+
+
+ RewriteEngine on
+ RewriteRule /daxeopen/(.*) /$1
+
+
+
+
+
+ RewriteEngine on
+ RewriteRule /daxeopen/(.*) /$1
+
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::daxesave
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::loncoursepub
+ErrorDocument 404 /adm/notfound.html
+ErrorDocument 500 /adm/errorhandler
+
+
AuthType LONCAPA
Require valid-user
@@ -454,6 +612,26 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonsearchcourse
+ErrorDocument 403 /adm/login
+ErrorDocument 500 /adm/errorhandler
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonindexcourse
+ErrorDocument 403 /adm/login
+ErrorDocument 500 /adm/errorhandler
+
+
AuthType LONCAPA
Require valid-user
@@ -497,14 +675,14 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
SetHandler perl-script
-PerlHandler Apache::lonremote
+PerlHandler Apache::lonpickresource
ErrorDocument 403 /adm/login
-ErrorDocument 500 /adm/errorhandler
+ErrorDocument 500 /adm/errorhandler
@@ -558,6 +736,17 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::londependencies
+ErrorDocument 403 /adm/login
+ErrorDocument 406 /adm/roles
+ErrorDocument 500 /adm/errorhandler
+
+
SetHandler perl-script
PerlHandler Apache::lonlogin
@@ -567,8 +756,8 @@ PerlHandler Apache::lonlogin
PerlAccessHandler Apache::publiccheck
AuthType LONCAPA
Require valid-user
-SetHandler perl-script
PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
PerlHandler Apache::restrictedaccess
ErrorDocument 500 /adm/errorhandler
@@ -577,8 +766,8 @@ ErrorDocument 500 /adm/errorhandler
PerlAccessHandler Apache::publiccheck
AuthType LONCAPA
Require valid-user
-SetHandler perl-script
PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
PerlHandler Apache::blockedaccess
ErrorDocument 500 /adm/errorhandler
@@ -614,6 +803,21 @@ SetHandler perl-script
PerlHandler Apache::migrateuser
+
+
+ AuthType shibboleth
+ ShibUseEnvironment On
+ ShibRequestSetting requireSession 1
+ ShibRequestSetting redirectToSSL 443
+ require valid-user
+ PerlAuthzHandler Apache::lonshibacc
+ PerlAuthzHandler Apache::lonacc
+
+
+ PerlTypeHandler Apache::lonnoshib
+
+
+
AuthType LONCAPA
Require valid-user
@@ -634,16 +838,6 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
-
-AuthType LONCAPA
-Require valid-user
-PerlAuthzHandler Apache::lonacc
-SetHandler perl-script
-PerlHandler Apache::admbookmarks
-ErrorDocument 403 /adm/login
-ErrorDocument 500 /adm/errorhandler
-
-
AuthType LONCAPA
Require valid-user
@@ -820,7 +1014,7 @@ ErrorDocument 406 /adm/unauthorized
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::loncacc
@@ -832,18 +1026,6 @@ ErrorDocument 406 /adm/unauthorized
ErrorDocument 500 /adm/errorhandler
-
-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
-
-
AuthType LONCAPA
Require valid-user
@@ -1096,6 +1278,18 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
+
+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
+
+
AuthType LONCAPA
Require valid-user
@@ -1106,6 +1300,16 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonextresedit
+ErrorDocument 403 /adm/login
+ErrorDocument 500 /adm/errorhandler
+
+
AuthType LONCAPA
Require valid-user
@@ -1219,19 +1423,52 @@ PerlHandler Apache::groupsort
PerlCleanupHandler Apache::groupsort::cleanup
PerlCleanupHandler Apache::lonacc::cleanup
ErrorDocument 403 /adm/login
+ErrorDocument 406 /adm/roles
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
SetHandler perl-script
-PerlHandler Apache::lonblockingstatus
+PerlHandler Apache::lonwishlistdisplay
ErrorDocument 403 /adm/login
+ErrorDocument 406 /adm/roles
ErrorDocument 500 /adm/errorhandler
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonblockingmenu
+ErrorDocument 403 /adm/login
+ErrorDocument 406 /adm/roles
+ErrorDocument 500 /adm/errorhandler
+
+
+
+PerlAccessHandler Apache::publiccheck
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonblockingstatus
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonaccesstimes
+ErrorDocument 403 /adm/login
+ErrorDocument 406 /adm/roles
+ErrorDocument 500 /adm/errorhandler
+
+
SetHandler perl-script
PerlHandler Apache::lonerrorhandler
@@ -1271,7 +1508,7 @@ PerlHandler Apache::lonsupportreq
ErrorDocument 500 /adm/errorhandler
-
+
SetHandler perl-script
PerlHandler Apache::loncss
ErrorDocument 500 /adm/errorhandler
@@ -1307,6 +1544,13 @@ PerlHandler Apache::londns
ErrorDocument 500 /adm/errorhandler
+
+SetHandler perl-script
+PerlHandler Apache::spellcheck
+
+
+
+
# ------------------------------------------------- Backdoor Adm Tests/Programs
@@ -1329,8 +1573,13 @@ PerlChildExitHandler Apache::lonacc::goo
Options None
AllowOverride None
-order deny,allow
-deny from all
+
+ Require all denied
+
+
+ order deny,allow
+ deny from all
+
# Allow uploaded files to be served
@@ -1338,8 +1587,13 @@ deny from all
Options Includes FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Allow construction space files to be served
@@ -1347,8 +1601,13 @@ allow from all
Options Includes FollowSymLinks
AllowOverride
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Yes to symbolic links and server-side includes
@@ -1356,8 +1615,13 @@ allow from all
Options Includes FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# If it is in cgi-bin, then it can be executed as a CGI script.
@@ -1365,8 +1629,13 @@ allow from all
AllowOverride None
Options ExecCGI FollowSymLinks
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Allow serving of files in prtspool
@@ -1374,8 +1643,13 @@ allow from all
Options Includes FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Allow serving of files in zipspool
@@ -1383,8 +1657,13 @@ allow from all
Options Includes FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Allow serving of files in captchaspool
@@ -1392,10 +1671,23 @@ allow from all
Options Includes FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
+
+ DirectoryIndex disabled
+
+
+
+ DirectoryIndex disabled
+
+
# ============================================================= Access Handlers
# ------------------------------------------------- Allow server-status reports
@@ -1414,22 +1706,28 @@ ErrorDocument 500 /adm/errorhandler
# ------------------- Allow access to local system documentation from localhost
Alias /doc /usr/doc
-order deny,allow
-deny from all
-allow from localhost
Options Indexes FollowSymLinks
+
+ Require local
+
+
+ order deny,allow
+ deny from all
+ allow from localhost
+
# ******** THESE "SHOULD" NEVER BE ALTERED BY THE USER ************************
# ====================================== Internal Settings / Perl Configuration
-PerlSetVar lonVersion ''
+PerlSetVar lonVersion ''
PerlSetVar lonIDsDir /home/httpd/lonIDs
+PerlSetVar lonDAVsessDir /home/httpd/webdav/sessionIDs
PerlSetVar lonTabDir /home/httpd/lonTabs
PerlSetVar lonUsersDir /home/httpd/lonUsers
PerlSetVar lonIconsURL /adm/lonIcons
PerlSetVar londPort 5663
-PerlSetVar lonSysEMail korte@lite.msu.edu
+PerlSetVar lonSysEMail techsupport@loncapa.org
PerlSetVar lonDaemons /home/httpd/perl
PerlSetVar lonLib /home/httpd/lib
PerlSetVar lonSockDir /home/httpd/sockets
@@ -1441,7 +1739,7 @@ PerlSetVar lonZipDir /home/http
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
+# & 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)
@@ -1449,7 +1747,7 @@ PerlSetVar lonFontsDir /home/h
# - 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 lonBrowsDet explorer%msie%netscape%msie\s(\d+\.\d+)\;%9999%5&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&chrome%chrome%chromeframe%\s+chrome\/(\d+\.\d+)%9999%1&explorer%\s+rv\:\d+\.\d+%firefox%\s+rv\:(\d+\.\d+)%9999%5&opera%\sOPR\/\d+\.\d+%shouldnotmatch%\sOPR\/(\d+\.\d+)%9999%6&opera%^Opera\/9.80\s.+Version\/\d+\.\d+$%shouldnotmatch%Version\/(\d+\.\d+)$%9999%6&opera%^Opera\/\d+\.\d+\s%Version\/\d+\.\d+$%^Opera\/(\d+\.\d+)\s%9999%6
PerlSetVar lonTextBrowsers windows\s+ce:lynx
PerlSetVar lonScansDir /home/httpd/scantron
@@ -1494,6 +1792,7 @@ PerlSetVar lonCertificateDirectory /home
PerlSetVar lonnetCertificateAuthority loncapaCA.pem
PerlSetVar lonnetCertificate lonhostcert.pem
+PerlSetVar lonnetHostnameCertificate lonhostnamecert.pem
#
# To generate the request for a certificate, and to negotiate the
@@ -1535,6 +1834,9 @@ PerlSetVar SSLEmail certificate@lon-
#-------------------------------------------------------------------------
+# ====================================== Include support for SSL rewrites
+
+Include conf/loncapa_rewrite.conf
# ====================================== Include machine-specific configuration