--- loncom/loncapa_apache.conf 2008/05/01 14:20:50 1.173 +++ loncom/loncapa_apache.conf 2016/10/23 18:50:10 1.215.2.18 @@ -1,8 +1,8 @@ ## ## loncapa_apache.conf -- Apache HTTP LON-CAPA configuration file ## -## $Id: loncapa_apache.conf,v 1.173 2008/05/01 14:20:50 raeburn Exp $ -## + +# $Id: loncapa_apache.conf,v 1.215.2.18 2016/10/23 18:50:10 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) @@ -37,7 +39,12 @@ 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 @@ -49,7 +56,24 @@ PerlCleanupHandler Apache::lonacc::clean PerlAuthenHandler Apache::checkauthen PerlSetVar lonOtherAuthen no + + PerlAuthenHandler Apache::lonshibauth + PerlSetVar lonOtherAuthen yes + PerlSetVar lonOtherAuthenType Shibboleth + + #PerlWarn On + +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" + + AuthType LONCAPA @@ -94,6 +118,18 @@ 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 @@ -104,7 +140,8 @@ PerlCleanupHandler Apache::lonacc::clean AuthType LONCAPA Require valid-user PerlAuthzHandler Apache::lonacc -PerlHandler Apache::londatecheck +PerlHandler Apache::londatecheck +PerlHandler Apache::lonipcheck PerlHeaderParserHandler Apache::lonuploadrep ErrorDocument 403 /adm/login ErrorDocument 404 /adm/notfound.html @@ -202,6 +239,7 @@ 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 @@ -214,6 +252,7 @@ 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 @@ -231,30 +270,51 @@ 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 ErrorDocument 404 /adm/notfound.html ErrorDocument 406 /adm/unauthorized ErrorDocument 500 /adm/errorhandler - -PerlAccessHandler Apache::lonracc + + + + 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] + + - -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 + +PerlAccessHandler Apache::lonracc @@ -292,22 +352,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 @@ -331,7 +391,7 @@ PerlCleanupHandler Apache::lonindexer::c PerlCleanupHandler Apache::lonacc::cleanup - + SetHandler perl-script PerlHandler Apache::lontex @@ -346,7 +406,7 @@ SetHandler perl-script PerlHandler Apache::lonsequence - + PerlAccessHandler Apache::publiccheck SetHandler perl-script PerlHandler Apache::lonmeta @@ -356,34 +416,41 @@ 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::lonacc PerlHandler Apache::londatecheck +PerlHandler Apache::lonipcheck SetHandler perl-script PerlHandler Apache::lonwrapper ErrorDocument 403 /adm/login @@ -434,6 +501,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 @@ -463,6 +540,7 @@ PerlAuthzHandler Apache::lonacc SetHandler perl-script PerlHandler Apache::lonroles ErrorDocument 403 /adm/login +ErrorDocument 409 /adm/preferences?action=lockwarning ErrorDocument 500 /adm/errorhandler @@ -483,7 +561,17 @@ PerlAuthzHandler Apache::lonacc SetHandler perl-script PerlHandler Apache::lonremote 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::lonpickauthor +ErrorDocument 403 /adm/login +ErrorDocument 500 /adm/errorhandler @@ -496,6 +584,17 @@ ErrorDocument 403 /adm/login ErrorDocument 500 /adm/errorhandler + +AuthType LONCAPA +Require valid-user +PerlAuthzHandler Apache::lonacc +SetHandler perl-script +PerlHandler Apache::lonpickuser +ErrorDocument 403 /adm/login +ErrorDocument 406 /adm/roles +ErrorDocument 500 /adm/errorhandler + + AuthType LONCAPA Require valid-user @@ -516,6 +615,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 @@ -525,8 +635,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 @@ -535,8 +645,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 @@ -548,6 +658,7 @@ PerlAuthzHandler Apache::lonacc SetHandler perl-script PerlHandler Apache::lonlogout ErrorDocument 403 /adm/login +ErrorDocument 409 /adm/preferences?action=lockwarning ErrorDocument 500 /adm/errorhandler @@ -571,6 +682,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 @@ -591,16 +717,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 @@ -657,6 +773,17 @@ ErrorDocument 406 /adm/roles ErrorDocument 500 /adm/errorhandler + +AuthType LONCAPA +Require valid-user +PerlAuthzHandler Apache::lonacc +SetHandler perl-script +PerlHandler Apache::courseprefs +ErrorDocument 403 /adm/login +ErrorDocument 406 /adm/roles +ErrorDocument 500 /adm/errorhandler + + AuthType LONCAPA Require valid-user @@ -690,6 +817,17 @@ ErrorDocument 406 /adm/roles ErrorDocument 500 /adm/errorhandler + +AuthType LONCAPA +Require valid-user +PerlAuthzHandler Apache::lonacc +SetHandler perl-script +PerlHandler Apache::lonrequestcourse +ErrorDocument 403 /adm/login +ErrorDocument 406 /adm/roles +ErrorDocument 500 /adm/errorhandler + + AuthType LONCAPA Require valid-user @@ -723,6 +861,15 @@ ErrorDocument 406 /adm/roles ErrorDocument 500 /adm/errorhandler + +PerlAccessHandler Apache::lonstatusacc +SetHandler perl-script +PerlHandler Apache::domainstatus +ErrorDocument 403 /adm/login +ErrorDocument 406 /adm/roles +ErrorDocument 500 /adm/errorhandler + + AuthType LONCAPA Require valid-user @@ -746,7 +893,7 @@ ErrorDocument 406 /adm/unauthorized ErrorDocument 500 /adm/errorhandler - + AuthType LONCAPA Require valid-user PerlAuthzHandler Apache::loncacc @@ -758,18 +905,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 @@ -1022,6 +1157,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 @@ -1032,6 +1179,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 @@ -1148,6 +1305,48 @@ ErrorDocument 403 /adm/login 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 +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 @@ -1187,7 +1386,7 @@ PerlHandler Apache::lonsupportreq ErrorDocument 500 /adm/errorhandler - + SetHandler perl-script PerlHandler Apache::loncss ErrorDocument 500 /adm/errorhandler @@ -1223,71 +1422,18 @@ PerlHandler Apache::londns ErrorDocument 500 /adm/errorhandler -# ------------------------------------------------- Backdoor Adm Tests/Programs - - -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm - - - -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm - - - -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm - - - -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm - + +SetHandler perl-script +PerlHandler Apache::spellcheck + - -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm - - -AuthName "harvest" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user reaper - - -AuthName "Offline" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user offline - - - -AuthName "Offline" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user offline - +# ------------------------------------------------- Backdoor Adm Tests/Programs -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm +PerlAccessHandler Apache::lonstatusacc SetHandler perl-script -PerlAuthzHandler Apache::lonacc PerlHandler Apache::lontest @@ -1305,8 +1451,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 @@ -1314,8 +1465,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 @@ -1323,8 +1479,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 @@ -1332,8 +1493,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. @@ -1341,8 +1507,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 @@ -1350,8 +1521,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 @@ -1359,36 +1535,64 @@ 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 + + +Options Includes FollowSymLinks +AllowOverride None + + Require all granted + + + order allow,deny + allow from all + + + + + DirectoryIndex disabled + + + + DirectoryIndex disabled + + # ============================================================= Access Handlers # ------------------------------------------------- Allow server-status reports +PerlAccessHandler Apache::lonstatusacc SetHandler server-status -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm # ------------------------ Allow LON-CAPA "low-level" connection status reports - -AuthName "LON-CAPA Network Administration" -AuthType Basic -AuthUserFile /home/httpd/lonTabs/htpasswd -require user lonadm - + +PerlAccessHandler Apache::lonstatusacc +ErrorDocument 406 /adm/roles +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 ************************ @@ -1396,20 +1600,24 @@ Options Indexes FollowSymLinks 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 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 +# & 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) @@ -1417,7 +1625,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 @@ -1433,12 +1641,6 @@ PerlSetVar FAQHost http://help.lon-capa PerlSetVar lonSqlAccess localhostkey -# ----------------------------------------------------------------------------- -# lonttpdPort is the port used by the lightweight graphics httpd server -# not the main Apache server -PerlSetVar lonhttpdPort 8080 - - #---------------------------------------------------------------------------- # # Parameters used by secure lond/lonc @@ -1509,6 +1711,9 @@ PerlSetVar SSLEmail certificate@lon- #------------------------------------------------------------------------- +# ====================================== Include support for SSL rewrites + +Include conf/loncapa_rewrite.conf # ====================================== Include machine-specific configuration