--- loncom/loncapa_apache.conf 2009/11/30 21:37:19 1.190
+++ loncom/loncapa_apache.conf 2022/07/08 16:21:07 1.215.2.30.2.2
@@ -1,8 +1,8 @@
##
## loncapa_apache.conf -- Apache HTTP LON-CAPA configuration file
##
-## $Id: loncapa_apache.conf,v 1.190 2009/11/30 21:37:19 raeburn Exp $
-##
+
+# $Id: loncapa_apache.conf,v 1.215.2.30.2.2 2022/07/08 16:21:07 raeburn 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,25 @@ 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
+
+
+Options +FollowSymLinks -Includes
PerlAccessHandler Apache::lontokacc
PerlCleanupHandler Apache::lontokacc::removefile
PerlCleanupHandler Apache::lonacc::cleanup
-
-SetHandler perl-script
-PerlHandler Apache::lonpdfupload
-
-
AuthType LONCAPA
Require valid-user
@@ -123,6 +150,10 @@ ErrorDocument 406 /adm/roles
ErrorDocument 500 /adm/errorhandler
+
+ Options +FollowSymLinks -Includes
+
+
AuthType LONCAPA
Require valid-user
@@ -244,32 +275,78 @@ ErrorDocument 406 /adm/notinit.html
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
-PerlAuthzHandler Apache::loncacc
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::londatecheck
+PerlHandler Apache::lonipcheck
+PerlHandler Apache::lonexttool
+ErrorDocument 404 /adm/notfound.html
+ErrorDocument 406 /adm/notinit.html
+ErrorDocument 500 /adm/errorhandler
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
SetHandler perl-script
-PerlHandler Apache::lonconstruct
+PerlHandler Apache::lonexturlcheck
ErrorDocument 403 /adm/login
ErrorDocument 404 /adm/notfound.html
ErrorDocument 406 /adm/unauthorized
-ErrorDocument 500 /adm/errorhandler
-
-
-
-PerlAccessHandler Apache::lonracc
-
+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 +382,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
@@ -359,7 +436,7 @@ SetHandler perl-script
PerlHandler Apache::lonsequence
-
+
PerlAccessHandler Apache::publiccheck
SetHandler perl-script
PerlHandler Apache::lonmeta
@@ -369,31 +446,31 @@ 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
@@ -454,6 +531,16 @@ 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
@@ -504,7 +591,7 @@ PerlAuthzHandler Apache::lonacc
SetHandler perl-script
PerlHandler Apache::lonremote
ErrorDocument 403 /adm/login
-ErrorDocument 500 /adm/errorhandler
+ErrorDocument 500 /adm/errorhandler
@@ -558,17 +645,38 @@ 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
+
+SetHandler perl-script
+PerlHandler Apache::ltiauth
+
+
+
+SetHandler perl-script
+PerlHandler Apache::lonrelaunch
+
+
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,12 +685,23 @@ 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
+
+PerlAccessHandler Apache::publiccheck
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonprotected
+ErrorDocument 403 /adm/login
+ErrorDocument 500 /adm/errorhandler
+
+
AuthType LONCAPA
Require valid-user
@@ -614,6 +733,35 @@ SetHandler perl-script
PerlHandler Apache::migrateuser
+
+ Header set Cache-Control "private,no-store,no-cache,max-age=0"
+
+ AuthType shibboleth
+ ShibUseEnvironment On
+ ShibRequestSetting requireSession 1
+ ShibRequestSetting redirectToSSL 443
+ require valid-user
+ PerlAuthzHandler Apache::lonshibacc
+ PerlAuthzHandler Apache::lonacc
+ ErrorDocument 403 /adm/login
+ ErrorDocument 500 /adm/errorhandler
+
+
+ PerlTypeHandler Apache::lonnoshib
+
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lonlinkexit
+ErrorDocument 403 /adm/login
+ErrorDocument 409 /adm/preferences?action=lockwarning
+ErrorDocument 500 /adm/errorhandler
+
+
AuthType LONCAPA
Require valid-user
@@ -624,22 +772,22 @@ ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
SetHandler perl-script
-PerlHandler Apache::lonspeller
+PerlHandler Apache::admannotations
ErrorDocument 403 /adm/login
-ErrorDocument 500 /adm/errorhandler
+ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::lonacc
SetHandler perl-script
-PerlHandler Apache::admbookmarks
+PerlHandler Apache::lonspeller
ErrorDocument 403 /adm/login
ErrorDocument 500 /adm/errorhandler
@@ -820,7 +968,7 @@ ErrorDocument 406 /adm/unauthorized
ErrorDocument 500 /adm/errorhandler
-
+
AuthType LONCAPA
Require valid-user
PerlAuthzHandler Apache::loncacc
@@ -832,18 +980,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 +1232,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 +1254,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,9 +1377,32 @@ 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::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
@@ -1231,6 +1412,17 @@ 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
@@ -1270,7 +1462,7 @@ PerlHandler Apache::lonsupportreq
ErrorDocument 500 /adm/errorhandler
-
+
SetHandler perl-script
PerlHandler Apache::loncss
ErrorDocument 500 /adm/errorhandler
@@ -1279,7 +1471,6 @@ ErrorDocument 500 /adm/errorhandler
SetHandler perl-script
PerlHandler Apache::coursecatalog
-PerlAccessHandler Apache::publiccheck
ErrorDocument 500 /adm/errorhandler
@@ -1307,6 +1498,23 @@ PerlHandler Apache::londns
ErrorDocument 500 /adm/errorhandler
+
+SetHandler perl-script
+PerlHandler Apache::spellcheck
+
+
+
+
+AuthType LONCAPA
+Require valid-user
+PerlAuthzHandler Apache::lonacc
+SetHandler perl-script
+PerlHandler Apache::lontiny
+ErrorDocument 403 /adm/login
+ErrorDocument 406 /adm/roles
+ErrorDocument 500 /adm/errorhandler
+
+
# ------------------------------------------------- Backdoor Adm Tests/Programs
@@ -1329,35 +1537,41 @@ 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
-Options Includes FollowSymLinks
+Options 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
-
-
-Options Includes FollowSymLinks
-AllowOverride
-order allow,deny
-allow from all
-
-
# Yes to symbolic links and server-side includes
-Options Includes FollowSymLinks
+Options 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,37 +1579,65 @@ 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
-Options Includes FollowSymLinks
+Options FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Allow serving of files in zipspool
-Options Includes FollowSymLinks
+Options FollowSymLinks
AllowOverride None
-order allow,deny
-allow from all
+
+ Require all granted
+
+
+ order allow,deny
+ allow from all
+
# Allow serving of files in captchaspool
-Options Includes FollowSymLinks
+Options 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,10 +1656,15 @@ 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 ************************
@@ -1425,11 +1672,13 @@ Options Indexes FollowSymLinks
PerlSetVar lonVersion ''
PerlSetVar lonIDsDir /home/httpd/lonIDs
+PerlSetVar lonBalanceDir /home/httpd/balanceIDs
+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
@@ -1440,8 +1689,10 @@ PerlSetVar lonIncludes /home/http
PerlSetVar lonZipDir /home/httpd/zipspool
PerlSetVar lonCaptchaDir /home/httpd/captchaspool
PerlSetVar lonCaptchaDb /home/httpd/captchadb
+PerlSetVar lonLTIDir /home/httpd/lonLTItmp
+PerlSetVar ltiIDsDir /home/httpd/ltiIDs
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,12 +1700,12 @@ 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
PerlSetVar lonScriptTimeout 10
-PerlSetVar BugzillaHost http://bugs.lon-capa.org/
+PerlSetVar BugzillaHost https://bugs.loncapa.org/
PerlSetVar FAQHost http://help.lon-capa.org/
# -----------------------------------------------------------------------------
# NOTE: lonSqlAccess key is the password for the MySQL user
@@ -1535,6 +1786,9 @@ PerlSetVar SSLEmail certificate@lon-
#-------------------------------------------------------------------------
+# ====================================== Include support for SSL rewrites
+
+Include conf/loncapa_rewrite.conf
# ====================================== Include machine-specific configuration