PidFile "{{ httpd_configuration.get('pid-file') }}" ServerName example.com ServerAdmin someone@email Listen [{{ httpd_configuration.get('listening-ip') }}]:{{ monitor_parameters.get('port') }} Define MonitorPort DocumentRoot "{{ directory.get('www') }}" ErrorLog "{{ httpd_configuration.get('error-log') }}" LoadModule unixd_module modules/mod_unixd.so LoadModule access_compat_module modules/mod_access_compat.so LoadModule authz_core_module modules/mod_authz_core.so LoadModule authn_core_module modules/mod_authn_core.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule mime_module modules/mod_mime.so LoadModule cgid_module modules/mod_cgid.so LoadModule dir_module modules/mod_dir.so LoadModule ssl_module modules/mod_ssl.so LoadModule alias_module modules/mod_alias.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule authn_file_module modules/mod_authn_file.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule headers_module modules/mod_headers.so LoadModule env_module modules/mod_env.so LoadModule socache_shmcb_module modules/mod_socache_shmcb.so SetEnvIf Origin "http(s)?://(www\.)?(.*)$" AccessControlAllowOrigin=$0 Header always set Access-Control-Allow-Origin %{AccessControlAllowOrigin}e env=AccessControlAllowOrigin Header set Access-Control-Allow-Credentials "true" Header set Access-Control-Allow-Methods "PROPFIND, PROPPATCH, COPY, MOVE, DELETE, MKCOL, LOCK, UNLOCK, PUT, GETLIB, VERSION-CONTROL, CHECKIN, CHECKOUT, UNCHECKOUT, REPORT, UPDATE, CANCELUPLOAD, HEAD, OPTIONS, GET, POST" Header set Access-Control-Allow-Headers "Overwrite, Destination, Content-Type, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control, Authorization" # SSL Configuration Define SSLConfigured SSLCertificateFile {{ httpd_configuration.get('certificate') }} SSLCertificateKeyFile {{ httpd_configuration.get('key') }} SSLRandomSeed startup builtin SSLRandomSeed connect builtin SSLRandomSeed startup /dev/urandom 256 SSLRandomSeed connect builtin SSLProtocol -ALL +SSLv3 +TLSv1 SSLHonorCipherOrder On SSLCipherSuite RC4-SHA:HIGH:!ADH SSLSessionCache shmcb:/{{ directory.get("mod-ssl") }}/ssl_scache(512000) SSLSessionCacheTimeout 300 SSLEngine On ScriptSock {{ httpd_configuration.get('cgid-pid-file') }} SSLVerifyDepth 1 SSLRequireSSL SSLOptions +StrictRequire # XXX: security???? Options +ExecCGI AddHandler cgi-script .cgi DirectoryIndex {{ monitor_parameters.get('index-filename') }} Alias /{{ monitor_private_hash }} {{ directory.get('private-directory') }}/ Order Allow,Deny Allow from all AllowOverride All Satisfy Any Options Indexes FollowSymLinks DirectoryIndex index.html order allow,deny deny from all AuthType Basic AuthName "Private access" AuthUserFile "{{ monitor_parameters.get('htaccess-file') }}" Require valid-user ProxyVia On RewriteEngine On {% for key, value in monitor_rewrite_rule.iteritems() %} RewriteRule ^/rewrite/{{ key }}($|/.*) {{ value }}/$1 [P,L] {% endfor %}