# You might want to set up a virtual host for the server, but it is # not a requirement. You can as well reach the server under its # common name under https://yourroundcubeserver.example.com/ # # NameVirtualHost * # # ServerName yourroundcubeserver.example.com # DocumentRoot __ROUNDCUBEPATH__ Alias /roundcube "__ROUNDCUBEPATH__/public_html" Alias /roundcubemail "__ROUNDCUBEPATH__/public_html" # AddDefaultCharset UTF-8 AddType text/x-component .htc Order allow,deny Allow from all = 2.4> Require all granted Order allow,deny Allow from all Order allow,deny Allow from all Include @apache_sysconfdir@/conf.d/@name@.inc Include @apache_sysconfdir@/conf.d/@name@.inc Options +SymLinksIfOwnerMatch RewriteEngine On RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico # security rules: # - deny access to files not containing a dot or starting with a dot # in all locations except installer directory RewriteRule ^(?!installer|\.well-known\/|[a-f0-9]{16})(\.?[^\.]+)$ - [F] # - deny access to some locations RewriteRule ^/?(\.git|\.tx|\.md|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F] # - deny access to composer binaries RewriteRule ^/vendor\/bin\/.* - [F] # - deny access to some documentation files RewriteRule /?(README|INSTALL|LICENSE|CHANGELOG|composer\.json-dist|composer\.json|package\.xml|Dockerfile)$ - [F] # security rules SetOutputFilter DEFLATE # prefer to brotli over gzip if brotli is available SetOutputFilter BROTLI_COMPRESS # some assets have been compressed, so no need to do it again SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|web[pm]|woff2?)$ no-brotli AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/json AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/x-component AddOutputFilterByType DEFLATE text/xml SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html # for better privacy/security ask browsers to not set the Referer Header set Content-Security-Policy "referrer no-referrer" # don't cache, please Header merge Cache-Control public env=!NO_CACHE # HSTS - HTTP Strict Transport Security Header always set Strict-Transport-Security "max-age=31536000; preload" env=HTTPS # X-Xss-Protection # This header is used to configure the built in reflective XSS protection found in Internet Explorer, Chrome and Safari (Webkit). Header set X-XSS-Protection "1; mode=block" ExpiresActive On ExpiresDefault "access plus 1 month" FileETag MTime Size Options -Indexes # # Special directories # Options -FollowSymLinks AllowOverride None Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all Options -FollowSymLinks AllowOverride None Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all Options -FollowSymLinks AllowOverride None Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all Options -FollowSymLinks AllowOverride None Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all Options -FollowSymLinks AllowOverride None Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all RewriteEngine On RewriteRule !^js|.*\.gif$ - [F] Options -FollowSymLinks AllowOverride None Order deny,allow Deny from all = 2.4> Require all denied Order deny,allow Deny from all Order deny,allow Deny from all # #