X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=installation%2Fpleroma.nginx;h=e3c70de547c9363020c4319131af0b66c6639552;hb=e404335af8fc214b84f9fe633830ba549bd322f7;hp=a0e91f464109288f54b6dfdc701c2263b8e0881f;hpb=10a96825960fc2d5465e9b4992c33941c8bd0c64;p=akkoma diff --git a/installation/pleroma.nginx b/installation/pleroma.nginx index a0e91f464..e3c70de54 100644 --- a/installation/pleroma.nginx +++ b/installation/pleroma.nginx @@ -11,24 +11,32 @@ proxy_cache_path /tmp/pleroma-media-cache levels=1:2 keys_zone=pleroma_media_cac server { server_name example.tld; + listen 80; - return 301 https://$server_name$request_uri; + listen [::]:80; # Uncomment this if you need to use the 'webroot' method with certbot. Make sure - # that you also create the .well-known/acme-challenge directory structure in pleroma/priv/static and - # that is is accessible by the webserver. You may need to load this file with the ssl - # server block commented out, run certbot to get the certificate, and then uncomment it. + # that the directory exists and that it is accessible by the webserver. If you followed + # the guide, you already ran 'mkdir -p /var/lib/letsencrypt' to create the folder. + # You may need to load this file with the ssl server block commented out, run certbot + # to get the certificate, and then uncomment it. # # location ~ /\.well-known/acme-challenge { - # root /pleroma/priv/static/; + # root /var/lib/letsencrypt/; # } + location / { + return 301 https://$server_name$request_uri; + } } # Enable SSL session caching for improved performance ssl_session_cache shared:ssl_session_cache:10m; server { + server_name example.tld; + listen 443 ssl http2; + listen [::]:443 ssl http2; ssl_session_timeout 5m; ssl_trusted_certificate /etc/letsencrypt/live/example.tld/chain.pem; @@ -47,8 +55,6 @@ server { ssl_stapling on; ssl_stapling_verify on; - server_name example.tld; - gzip_vary on; gzip_proxied any; gzip_comp_level 6; @@ -65,7 +71,9 @@ server { proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; - proxy_pass http://localhost:4000; + # this is explicitly IPv4 since Pleroma.Web.Endpoint binds on IPv4 only + # and `localhost.` resolves to [::0] on some systems: see issue #930 + proxy_pass http://127.0.0.1:4000; client_max_body_size 16m; }