summaryrefslogtreecommitdiff
path: root/profiles/apache2.conf
diff options
context:
space:
mode:
Diffstat (limited to 'profiles/apache2.conf')
-rw-r--r--profiles/apache2.conf81
1 files changed, 81 insertions, 0 deletions
diff --git a/profiles/apache2.conf b/profiles/apache2.conf
new file mode 100644
index 0000000..ce0095c
--- /dev/null
+++ b/profiles/apache2.conf
@@ -0,0 +1,81 @@
+# example main configuration for kopano-webapp
+#vim: set ft=apache ts=4 sw=4 expandtab :#
+
+<Directory /usr/share/kopano-webapp/>
+ DirectoryIndex index.php
+ Options -Indexes +FollowSymLinks
+ AllowOverride Options
+
+ <IfModule apparmor_module>
+ AAHatName kopano-webapp
+ </IfModule>
+
+ # Only server Apache2.4
+ <IfVersion >= 2.3>
+ Require all granted
+ </IfVersion>
+
+ FileETag All
+
+ # Uncomment to enhance security of WebApp by restricting cookies to
+ # only be provided over HTTPS connections.
+ # php_flag session.cookie_secure on
+ # php_flag session.cookie_httponly on
+
+ # The maximum POST limit. To upload large files, this value must be
+ # larger than upload_max_filesize.
+ php_value post_max_size 31M
+ php_value upload_max_filesize 30M
+
+ # Manipulate the cache control headers if mod_expires and
+ # mod_headers are both enabled; otherwise the client will depend
+ # on the ETag header. However, you can set FileETag to "None" if
+ # you have multiple servers serving WebApp to the same user. In
+ # that case, apache will fall back to the config below so make
+ # sure these two modules are loaded!
+ <IfModule expires_module>
+ <IfModule headers_module>
+ ExpiresActive On
+ ExpiresDefault "now"
+
+ <FilesMatch "\.(jpg|gif|png)$">
+ # All (static) resources set to 2 months expiration time.
+ ExpiresDefault "access plus 2 months"
+ Header append Cache-Control "public"
+ </FilesMatch>
+
+ <FilesMatch "\.(js|css)$">
+ # All non-dynamic files set to 2 weeks expiration time.
+ ExpiresDefault "access plus 2 weeks"
+ # User agents are requested to revalidate for each resource
+ # so that the server can always serve a newer version if
+ # necessary.
+ Header append Cache-Control "no-cache, must-revalidate"
+
+ # Treat IE a little differently due to the remarks on no-cache
+ # on http://support.microsoft.com/kb/234067
+ <IfModule setenvif_module>
+ BrowserMatch MSIE ie_bug
+ </IfModule>
+ Header set Cache-Control "must-revalidate, private" env=ie_bug
+ </FilesMatch>
+
+ <filesMatch "\.(php)$">
+ # PHP files must always be retrieved from the server.
+ ExpiresActive Off
+ Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform"
+ Header set Pragma "no-cache"
+ </filesMatch>
+ </IfModule>
+ </IfModule>
+
+ # Enable gzip compression if the module is available
+ <IfModule deflate_module>
+ <filesMatch "\.(js|css)$">
+ SetOutputFilter DEFLATE
+ </filesMatch>
+ </IfModule>
+
+</Directory>
+
+# vim: autoindent ts=4 sw=4 expandtab softtabstop=4 ft=conf