pleroma-apache.conf 2.05 KB
Newer Older
shibayashi's avatar
shibayashi committed
1
2
3
4
5
6
# default Apache site config for Pleroma
#
# needed modules: define headers proxy proxy_http proxy_wstunnel rewrite ssl
#
# Simple installation instructions:
# 1. Install your TLS certificate, possibly using Let's Encrypt.
7
# 2. Replace 'example.tld' with your instance's domain wherever it appears.
shibayashi's avatar
shibayashi committed
8
9
10
# 3. This assumes a Debian style Apache config. Copy this file to
#    /etc/apache2/sites-available/ and then add a symlink to it in
#    /etc/apache2/sites-enabled/ by running 'a2ensite pleroma-apache.conf', then restart Apache.
11

12
Define servername example.tld
shibayashi's avatar
shibayashi committed
13
14

ServerName ${servername}
15
16
17
18
19
ServerTokens Prod

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

20
<VirtualHost *:80>
shibayashi's avatar
shibayashi committed
21
    Redirect permanent / https://${servername}
22
23
24
25
</VirtualHost>

<VirtualHost *:443>
    SSLEngine on
shibayashi's avatar
shibayashi committed
26
27
28
    SSLCertificateFile      /etc/letsencrypt/live/${servername}/cert.pem
    SSLCertificateKeyFile   /etc/letsencrypt/live/${servername}/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/${servername}/fullchain.pem
29
30
31
32
33
34
35
36

    # Mozilla modern configuration, tweak to your needs
    SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1
    SSLCipherSuite          ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
    SSLHonorCipherOrder     on
    SSLCompression          off
    SSLSessionTickets       off

Stanislas's avatar
Stanislas committed
37
38
39
40
    RewriteEngine On
    RewriteCond %{HTTP:Connection} Upgrade [NC]
    RewriteCond %{HTTP:Upgrade} websocket [NC]
    RewriteRule /(.*) ws://localhost:4000/$1 [P,L]
41

Stanislas's avatar
Stanislas committed
42
43
44
    ProxyRequests off
    ProxyPass / http://localhost:4000/
    ProxyPassReverse / http://localhost:4000/
45

shibayashi's avatar
shibayashi committed
46
    RequestHeader set Host ${servername}
Stanislas's avatar
Stanislas committed
47
    ProxyPreserveHost On
48
</VirtualHost>
49
50
51
52
53

# OCSP Stapling, only in httpd 2.3.3 and later
SSLUseStapling          on
SSLStaplingResponderTimeout 5
SSLStaplingReturnResponderErrors off
shibayashi's avatar
shibayashi committed
54
SSLStaplingCache        shmcb:/var/run/ocsp(128000)