Lets Encrypt: issues with custom nginx rewrites

Discussion in 'General' started by Hbod, Aug 12, 2019.

  1. Hbod

    Hbod Member

    Hi,
    I am using a CMS (REDAXO) and have to post a custom nginx rewrite rule. As soon as I inject it, it will break creation of lets encrypt certificates.
    Can anybody help me to fix this issue?

    Code:
    charset utf-8;
    
    # OPTIONAL von HTTP auf HTTPS weiterleiten, Kommentare entfernen falls nötig
    #if ($https !~ "on"){
    #    set $rule_8 1;
    #}
    #if ($rule_8 = "1"){
    #    rewrite ^(.*)$ https://$server_name$request_uri permanent;
    #}
    
    rewrite ^/sitemap\.xml$                           /index.php?rex_yrewrite_func=sitemap last;
    rewrite ^/robots\.txt$                            /index.php?rex_yrewrite_func=robots last;
    rewrite ^/media[0-9]*/imagetypes/([^/]*)/([^/]*)  /index.php?rex_media_type=$1&rex_media_file=$2&$args;
    rewrite ^/images/([^/]*)/([^/]*)                  /index.php?rex_media_type=$1&rex_media_file=$2&$args;
    rewrite ^/imagetypes/([^/]*)/([^/]*)              /index.php?rex_media_type=$1&rex_media_file=$2;
    
    if ($uri !~ "^redaxo/.*"){
        set $rule_6 4$rule_6;
    }
    
    if ($uri !~ "^media/.*"){
        set $rule_6 5$rule_6;
    }
    
    if (!-e $request_filename){
        rewrite "^(.*)$" /index.php?$query_string last;
    }
    
    #!!! WICHTIG !!! Zugriff auf alle Dateien mit . verbieten (könnte ja eine alte .htpasswd enthalten sein)
    # ACHTUNG: nicht nutzen, falls auf der selben Instanz Let's Encrypt läuft, da ansonsten .acme-challange fehlschlägt.
    # In diesem Fall bitte die nächste Zeile mit # auskommentieren
    location ~ /\. { deny  all; }
    
    # Zugriff auf diese Verzeichnisse verbieten
    location ^~ /redaxo/src { deny  all; }
    location ^~ /redaxo/data { deny  all; }
    location ^~ /redaxo/cache { deny  all; }
    # Ab REDAXO 5.4 muss folgende Zeile dazu
    location ^~ /redaxo/bin { deny  all; }
    
    
    # In einigen Fällen könnte folgende Anweisung zusätlich sinnvoll sein.
    
    location ~ /\.(ttf|eot|woff|woff2)$ {
        add_header Access-Control-Allow-Origin *;
        expires 604800s;
    }
    P.S: even if I remove the line
    location ~ /\. { deny all; }

    it wont work.
     

Share This Page