deny remote access to elements/*html, RT#23357
[freeside.git] / htetc / freeside-base2.conf
1 PerlModule Apache2::compat
2
3 #PerlModule Apache::DBI
4
5 PerlModule HTML::Mason
6 PerlSetVar MasonArgsMethod CGI
7 PerlModule HTML::Mason::ApacheHandler
8
9 PerlChildInitHandler "sub { srand }"
10
11 PerlRequire "%%%MASON_HANDLER%%%"
12
13 #Locale::SubCountry
14 #
15 AddDefaultCharset UTF-8
16
17 PerlModule FS::AuthCookieHandler
18
19 #XXX need to also work properly for installs w/o /freeside/ in path
20 PerlSetVar FreesideLoginScript /freeside/loginout/login.html
21
22 #PerlSetVar FreesideEverSecure 1
23 PerlSetVar FreesideHttpOnly 1
24
25 <Directory %%%FREESIDE_DOCUMENT_ROOT%%%>
26
27     AuthName Freeside
28     AuthType FS::AuthCookieHandler
29     PerlAuthenHandler FS::AuthCookieHandler->authenticate
30     PerlAuthzHandler  FS::AuthCookieHandler->authorize
31     require valid-user
32
33     <Files ~ "(\.cgi|\.html)$">
34         SetHandler perl-script
35         PerlHandler HTML::Mason
36     </Files>
37
38 </Directory>
39
40 <Files login>
41     AuthName Freeside
42     AuthType FS::AuthCookieHandler
43     SetHandler perl-script
44     PerlHandler FS::AuthCookieHandler->login
45 </Files>
46
47 <Directory %%%FREESIDE_DOCUMENT_ROOT%%%/elements/>
48     <Files "freeside.css">
49         Satisfy any
50     </Files>
51
52     <Files ~ "(\.html)$">
53         Deny from all
54         SetHandler None
55     </Files>
56 </Directory>
57
58 <Directory %%%FREESIDE_DOCUMENT_ROOT%%%/rt/Helpers/>
59     SetHandler perl-script
60     PerlHandler HTML::Mason
61 </Directory>
62
63 <Directory %%%FREESIDE_DOCUMENT_ROOT%%%/rt/REST/1.0/NoAuth/>
64     Satisfy any
65 </Directory>
66
67 <Directory %%%FREESIDE_DOCUMENT_ROOT%%%/REST/1.0/>
68     Satisfy any
69     SetHandler perl-script
70     PerlHandler HTML::Mason
71 </Directory>
72