1 # DO NOT EDIT - This file is being maintained by Chef
3 WSGIDaemonProcess <%= @user %>.dev.openstreetmap.org user=<%= @user %> processes=2 threads=8 restart-interval=3600 inactivity-timeout=600 graceful-timeout=60 maximum-requests=2000
6 ServerName <%= @user %>.dev.openstreetmap.org
7 ServerAlias <%= @user %>.dev.osm.org
9 ServerAdmin webmaster@openstreetmap.org
12 SSLCertificateFile /etc/ssl/certs/<%= @user %>.dev.openstreetmap.org.pem
13 SSLCertificateKeyFile /etc/ssl/private/<%= @user %>.dev.openstreetmap.org.key
15 # Set the proxy timeout to 90 seconds to allow long-running requests
18 # Remove Proxy request header to mitigate https://httpoxy.org/
19 RequestHeader unset Proxy early
22 DocumentRoot <%= @directory %>
23 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
25 WSGIProcessGroup <%= @user %>.dev.openstreetmap.org
28 #LogLevel rewrite:trace2
30 CustomLog /var/log/apache2/<%= @user %>.dev.openstreetmap.org-access.log combined_extended
31 ErrorLog /var/log/apache2/<%= @user %>.dev.openstreetmap.org-error.log
33 # Prevent abuse by an anonymous AI bot
34 RewriteCond %{REQUEST_METHOD} ^(GET|HEAD)$
35 RewriteCond %{HTTP_REFERER} ^-?$
36 RewriteCond %{HTTP_USER_AGENT} ((CriOS|Chrome)/[1-9][0-9]?\.0\.|Chrome/1[0-4][0-9]\.0\.|(Firefox|FxiOS)/[1-6]?[0-9]\.|MSIE\ [5-9]\.0|Opera/[8-9]\.|Windows\ NT\ [3-5]\.|Version/[3-5]\.[0-1]) [NC]
37 RewriteRule ^ - [R=429,L]
39 RewriteCond <%= @directory %>%{REQUEST_FILENAME} -f
40 RewriteRule ^/cgi-bin/(.*)$ /~<%= @user %>/cgi-bin/$1 [PT,L]
42 <FilesMatch ".+\.ph(p|ps|p3|tml)$">
43 SetHandler "proxy:unix:/run/php/php-<%= @user %>-fpm.sock|fcgi://127.0.0.1"
48 ServerName <%= @user %>.dev.openstreetmap.org
49 ServerAlias <%= @user %>.dev.osm.org
51 ServerAdmin webmaster@openstreetmap.org
53 CustomLog /var/log/apache2/<%= @user %>.dev.openstreetmap.org-access.log combined_extended
54 ErrorLog /var/log/apache2/<%= @user %>.dev.openstreetmap.org-error.log
56 RedirectPermanent /.well-known/acme-challenge/ http://acme.openstreetmap.org/.well-known/acme-challenge/
57 RedirectPermanent / https://<%= @user %>.dev.openstreetmap.org/
60 <Directory <%= @directory %>>
61 AllowOverride AuthConfig FileInfo Indexes
62 Options SymLinksIfOwnerMatch Indexes Includes
66 <Directory <%= @directory %>/cgi-bin>
68 Options ExecCGI SymLinksIfOwnerMatch
72 <Directory <%= @directory %>/wsgi-bin>
73 SetHandler wsgi-script
74 Options ExecCGI SymLinksIfOwnerMatch