worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; gzip on; gzip_vary on; gzip_min_length 1k; gzip_proxied expired no-cache no-store private auth; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 2; gzip_types text/plain application/x-javascript application/javascript text/css application/xml application/json; map $sent_http_content_type $expires { default off; text/css 15m; application/javascript 15m; ~image/ 15m; } server{ server_name jozanofastora.xyz; root /usr/local/www/jozan; index index.html; expires $expires; location / { try_files $uri $uri/ =404; } location ~ /\.ht { deny all; } location ~ \.cgi$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/asm-example.cgi; fastcgi_param PATH_INFO $uri; fastcgi_param HTTP_HOST $server_name; fastcgi_pass unix:/var/run/fcgiwrap/fcgiwrap.sock; } error_page 403 /403.html; location = /403.html { root /usr/local/www/jozan/err; } error_page 404 /404.html; location = /404.html { root /usr/local/www/jozan/err; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/local/www/nginx-dist; } listen 443 ssl; ssl_certificate /usr/local/etc/letsencrypt/live/jozanofastora.xyz/fullchain.pem; ssl_certificate_key /usr/local/etc/letsencrypt/live/jozanofastora.xyz/privkey.pem; } server { server_name gitjoe.xyz; root /usr/local/www/gitjoe; try_files $uri @cgit; index cgit.cgi; location @cgit { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/cgit.cgi; fastcgi_param PATH_INFO $uri; fastcgi_param QUERY_STRING $args; fastcgi_param HTTP_HOST $server_name; fastcgi_param CGIT_CONFIG /usr/local/etc/cgitrc; fastcgi_pass unix:/var/run/fcgiwrap/fcgiwrap.sock; gzip off; rewrite ^/([^/]+/.*)?$ /cgit.cgi?url=$1 break; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/local/www/nginx-dist; } listen 443 ssl; ssl_certificate /usr/local/etc/letsencrypt/live/gitjoe.xyz/fullchain.pem; ssl_certificate_key /usr/local/etc/letsencrypt/live/gitjoe.xyz/privkey.pem; } server { server_name fossil.jozanofastora.xyz; index index.html; root /usr/local/www/fossiljoe; # Bypass Fossil for the static documentation generated from # our source code by Doxygen, so it merges into the embedded # doc URL hierarchy at Fossil’s $ROOT/doc without requiring that # these generated files actually be stored in the repo. This # also lets us set aggressive caching on these docs, since # they rarely change. location /code/doc/html { root /usr/local/www/fossiljoe; location ~* \.(html|ico|css|js|gif|jpg|png)$ { expires 7d; add_header Vary Accept-Encoding; access_log off; } } # Redirect everything else to the Fossil instance location /code { include scgi_params; scgi_param SCRIPT_NAME "/code"; scgi_pass 127.0.0.1:12345; } } server{ if ($host = gitjoe.xyz) { return 301 https://$host?p=about; } server_name gitjoe.xyz; listen 80; return 404; } server{ if ($host = jozanofastora.xyz) { return 301 https://$host$request_uri; } server_name jozanofastora.xyz; listen 80; return 404; } #server { # if ($host = fossil.jozanofastora.xyz) { # return 301 https://$host$request_uri; # } # # server_name fossil.jozanofastora.xyz; # listen 80; # return 404; #} server { server_name www.jozanofastora.xyz; listen 80; listen 443 ssl; rewrite ^/(.*) http://jozanofastora.xyz/$1 permanent; ssl_certificate /usr/local/etc/letsencrypt/live/jozanofastora.xyz/fullchain.pem; ssl_certificate_key /usr/local/etc/letsencrypt/live/jozanofastora.xyz/privkey.pem; return 404; } server { server_name www.gitjoe.xyz git.jozanofastora.xyz; listen 80; listen 443 ssl; rewrite ^/(.*) http://gitjoe.xyz/?p=about permanent; ssl_certificate /usr/local/etc/letsencrypt/live/gitjoe.xyz/fullchain.pem; ssl_certificate_key /usr/local/etc/letsencrypt/live/gitjoe.xyz/privkey.pem; return 404; } }