htaccess auf nginx Proxy-Pass Regel

karabey

Sehr aktives Mitglied
28. November 2012
923
75
Hallo,

Es gibt sicherlich unter uns viele die NGINX für die Geschwindigkeit etc einsetzen aber es gibt keine Proxy-Pass Regeln von JTL um diese einzusetzen. JTL Software teilt im roten Kasten mit das diese Regeln vom Nutzer umgeändert werden soll. Bin kein Programmierer und kann es nicht! Aber ich bemühe mich etwas zu tun und poste mal meine Regeln.

Der .htaccess von der Shop v4.03.1 ist wie folgt:

Code:
<IfModule mod_setenvif.c>
  <IfModule mod_headers.c>
    <FilesMatch "\.(bmp|cur|gif|ico|jpe?g|png|svgz?|webp)$">
      SetEnvIf Origin ":" IS_CORS
      Header set Access-Control-Allow-Origin "*" env=IS_CORS
    </FilesMatch>
    
    SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
    RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
  </IfModule>
</IfModule>


<IfModule mod_filter.c>
  AddOutputFilterByType DEFLATE \
    "application/atom+xml" \
    "application/javascript" \
    "application/json" \
    "application/ld+json" \
    "application/manifest+json" \
    "application/rdf+xml" \
    "application/rss+xml" \
    "application/schema+json" \
    "application/vnd.geo+json" \
    "application/vnd.ms-fontobject" \
    "application/x-font-ttf" \
    "application/x-javascript" \
    "application/x-web-app-manifest+json" \
    "application/xhtml+xml" \
    "application/xml" \
    "font/eot" \
    "font/opentype" \
    "image/bmp" \
    "image/svg+xml" \
    "image/vnd.microsoft.icon" \
    "image/x-icon" \
    "text/cache-manifest" \
    "text/css" \
    "text/html" \
    "text/javascript" \
    "text/plain" \
    "text/vcard" \
    "text/vnd.rim.location.xloc" \
    "text/vtt" \
    "text/x-component" \
    "text/x-cross-domain-policy" \
    "text/xml"


  <IfModule mod_mime.c>
    AddEncoding gzip svgz
  </IfModule>
</IfModule>


<IfModule mod_deflate.c>
  <FilesMatch "\\.(js|css|html|htm|php|xml)$">
    SetOutputFilter DEFLATE
  </FilesMatch>
</IfModule>


<IfModule mod_expires.c>
  ExpiresActive on
  ExpiresDefault "access plus 1 months"
</IfModule>


<IfModule mod_headers.c>
  Header unset ETag
  
  Header set X-UA-Compatible "IE=edge"
  Header set X-Content-Type-Options "nosniff"
  Header unset X-Powered-By
  
  <FilesMatch "\.(eot|otf|tt[cf]|woff2?)$">
    Header set Access-Control-Allow-Origin "*"
  </FilesMatch>


  <FilesMatch "\.(appcache|atom|bbaw|bmp|crx|css|cur|eot|f4[abpv]|flv|geojson|gif|htc|ico|jpe?g|js|json(ld)?|m4[av]|manifest|map|mp4|oex|og[agv]|opus|otf|pdf|png|rdf|rss|safariextz|svgz?|swf|topojson|tt[cf]|txt|vcard|vcf|vtt|webapp|web[mp]|webmanifest|woff2?|xloc|xml|xpi)$">
    Header unset X-UA-Compatible
  </FilesMatch>
</IfModule>


<IfModule mod_rewrite.c>
  RewriteEngine on


  #REWRITE ANPASSUNG 1 (REWRITEBASE)
  #Wenn Ihr Shop in einem Unterverzeichnis (also z.B. meinedomain.de/meinverzeichnis) installiert ist, so kommentieren Sie die kommende Zeile aus und passen Sie den Verzeichnisnamen an
  RewriteBase /


  #REWRITE ANPASSUNG 2 (auf www.meinedomain.de umleiten)
  #Ihr Shop sollte nicht unter www.meinedomain.de und nur meinedomain.de erreichbar sein, siehe: http://guide.jtl-software.de/index.php?title=JTL-Shop3-Neuinstallation#4._Einrichtung_einer_Domainweiterleitung
  #RewriteCond %{HTTP_HOST} ^meinedomain.de
  #RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [r=301,L]


  #Regeln fuer das Rewrite der URLs von JTL-Shop4
  #Aendern Sie an diesen Zeilen nichts!
  RewriteRule ^((urllist|sitemap_).*\.(xml|txt)(\.gz)?)$ includes/sitemap.php?datei=$1 [L]
  RewriteRule ^export/((sitemap_).*\.(xml|txt)(\.gz)?)$ $1 [L]
  RewriteRule ^asset/(.*)$ includes/libs/minify/?g=$1 [L]
  RewriteRule ^robots.txt$ robots.php [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^. index.php [L]
</IfModule>


FileETag None
#Server Signatur deaktivieren
#ServerSignature Off

Mein NGINX Proxy-Pass Regeln sind wie folgt:
Code:
# Enable Gzip
gzip  on;
gzip_http_version 1.0;
gzip_comp_level 6;
gzip_min_length 1100;
gzip_buffers     16 8k;
gzip_proxied any;


gzip_types
# text/html is always compressed by HttpGzipModule
text/css
text/javascript
text/xml
text/plain
text/x-component
application/javascript
application/json
application/xml
application/rss+xml
application/x-javascript
font/truetype
font/opentype
application/vnd.ms-fontobject
image/svg+xml svg svgz
image/png
image/gif
image/jpeg;


gzip_static on;


gzip_proxied        expired no-cache no-store private auth;
gzip_disable        "MSIE [1-6]\.";
gzip_vary           on;


location ~* \.(?:ico|css|js|gif|jpe?g|png|svg|woff|ttf)$ {
	expires max;
	try_files $uri $uri/ @rewrite;
	add_header Pragma public;
	add_header Cache-Control "public";
	log_not_found off;
	access_log off;
	add_header ETag "";
}


rewrite ^/asset/(.*) /includes/libs/minify/index.php?g=$1 last;


location @rewrite {
	rewrite / /index.php?$args;
}
location /admin{}
location /dbeS{}


location ~ [^/]\.php(/|$) {
	fastcgi_split_path_info ^(.+?\.php)(/.*)$;
	if (!-f $document_root$fastcgi_script_name) {
		return 404;
	}
	fastcgi_index index.php;
	include fastcgi_params;
	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	proxy_connect_timeout  300s;
	proxy_send_timeout  300s;
	proxy_read_timeout  300s;
	fastcgi_send_timeout 300s;
	fastcgi_read_timeout 300s;
	fastcgi_pass 127.0.0.1:9002;
}

Danke an micky59999 an seine Regeln.

Kann man den Regeln noch verändern/verbessern damit es keine Fehler gibt?
 

karabey

Sehr aktives Mitglied
28. November 2012
923
75
AW: htaccess auf nginx Proxy-Pass Regel

Ja auch die sollte man dem entsprechend anpassen :p
 

oemi1980

Gut bekanntes Mitglied
30. November 2007
131
2
AW: htaccess auf nginx Proxy-Pass Regel

Gibt es irgendwo eine Komplettanleitung um auf NGINX umzustellen oder mit zu beginnen?
 

csaeum

Sehr aktives Mitglied
23. Juli 2011
1.337
147
Küps
AW: htaccess auf nginx Proxy-Pass Regel

Also ich habe mich die letzten 3 Wochen mal ausführlich mit den ganzen beschäftigt.

Wir nutzen einen VServer für 10€ im Monat.

Ich nutzte bis jetzt PD-Admin als Admininterface mit Memcached unser Shop hat damit recht gut performt.
First Viel lag bei 4,4 Sekunden RepeatView bei 2,5 Sekunden laut Webpagetest. Bis auf Compress Images (Note C) haben wir überall ein A. CDN nutzen wir nicht.

Nun habe ich als Admininterface VestaCP und als Server NGINX mit PHPFPM.

Ein Testshop läuft damit ohne Fehler:
First Viel liegt nun bei 2,1 Sekunden RepeatView bei 1,4 Sekunden laut Webpagetest.
Auch hier wieder alles bei Note A, Compress Images nicht verfügbar (wahrscheinlich weil ich Google PageSpeed nutze) sowie CDN auch weil ich es nicht nutze.

Ich werde nächste Woche den Produktiven Shop umziehen und dann nochmal genauer berichten.

Wer meine Template für NGINX für VestaCP braucht dies ist anbei:

server {
listen %ip%:%web_port%;
server_name %domain_idn% %alias_idn%;
root %docroot%;
index index.php index.html index.htm;
access_log /var/ log/nginx/domains/%domain%.log combined;
access_log /var/log/nginx/domains/%domain%.bytes bytes;
error_log /var/log/nginx/domains/%domain%.error.log error;

location / {
#JTL
try_files $uri $uri/ @rewrite;

location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ {
expires max;
#JTL
log_not_found off;
access_log off;
add_header ETag "";
}

location ~ [^/]\.php(/|$) {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}

fastcgi_pass %backend_lsnr%;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
}
}
#JTL
rewrite ^/asset/(.*) /includes/libs/minify/index.php?g=$1 last;

location @rewrite {
rewrite / /index.php?$args;
}

location /admin {
location ~ [^/]\.php(/|$) {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}

fastcgi_pass %backend_lsnr%;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
}
}

location /dbeS {
location ~ [^/]\.php(/|$) {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}

fastcgi_pass %backend_lsnr%;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
}
}

error_page 403 /error/404.html;
error_page 404 /error/404.html;
error_page 500 502 503 504 /error/50x.html;

#Standard
location /error/ {
alias %home%/%user%/web/%domain%/document_errors/;
}

location ~* "/\.(htaccess|htpasswd)$" {
deny all;
return 404;
}

include /etc/nginx/conf.d/phpmyadmin.inc*;
include /etc/nginx/conf.d/phppgadmin.inc*;
include /etc/nginx/conf.d/webmail.inc*;

# Pagespeedanweisungen
pagespeed on;
pagespeed RewriteLevel CoreFilters;
pagespeed FetchHttps enable,allow_self_signed;
pagespeed FileCachePath /var/ngx_pagespeed_cache/%domain_idn%;
pagespeed EnableFilters collapse_whitespace;
pagespeed EnableFilters combine_css;
pagespeed EnableFilters combine_javascript;
pagespeed EnableFilters combine_heads;
pagespeed EnableFilters convert_jpeg_to_progressive;
pagespeed EnableFilters convert_png_to_jpeg;
pagespeed EnableFilters convert_meta_tags;
pagespeed EnableFilters dedup_inlined_images;
pagespeed EnableFilters extend_cache;
pagespeed EnableFilters extend_cache_pdfs;
pagespeed EnableFilters fallback_rewrite_css_urls;
pagespeed EnableFilters inline_import_to_link;
pagespeed EnableFilters local_storage_cache;
pagespeed EnableFilters outline_css;
pagespeed EnableFilters outline_javascript;
pagespeed EnableFilters recompress_images;
pagespeed EnableFilters recompress_jpeg;
pagespeed EnableFilters remove_comments;
pagespeed EnableFilters remove_quotes;
pagespeed EnableFilters rewrite_css;
pagespeed EnableFilters rewrite_images;
pagespeed EnableFilters rewrite_javascript;
pagespeed EnableFilters rewrite_javascript_inline;
pagespeed EnableFilters rewrite_javascript_external;
pagespeed EnableFilters rewrite_style_attributes;
pagespeed EnableFilters rewrite_style_attributes_with_url;
pagespeed EnableFilters trim_urls;
pagespeed UseExperimentalJsMinifier on;
pagespeed JpegRecompressionQuality 85;
pagespeed ImageRecompressionQuality 85;
pagespeed Domain https://fonts.googleapis.com;

location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; }
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }
location /ngx_pagespeed_statistics {auth_basic "Restricted"; auth_basic_user_file /etc/nginx/googlepagespeed.htpasswd; }
location /ngx_pagespeed_global_statistics {auth_basic "Restricted"; auth_basic_user_file /etc/nginx/googlepagespeed.htpasswd; }
location /ngx_pagespeed_message {auth_basic "Restricted"; auth_basic_user_file /etc/nginx/googlepagespeed.htpasswd; }
location /pagespeed_console {auth_basic "Restricted"; auth_basic_user_file /etc/nginx/googlepagespeed.htpasswd; }
location ~ ^/pagespeed_admin {auth_basic "Restricted"; auth_basic_user_file /etc/nginx/googlepagespeed.htpasswd; }
location ~ ^/pagespeed_global_admin {auth_basic "Restricted"; auth_basic_user_file /etc/nginx/googlepagespeed.htpasswd; }

# Gzipkonfiguration
gzip on;
gzip_comp_level 6;
gzip_min_length 500;
gzip_buffers 16 8k;
gzip_proxied any;
gzip_types text/plain text/css image/png image/gif image/jpeg application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript;
gzip_vary off;

include %home%/%user%/conf/web/nginx.%domain%.conf*;
}
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Fehler bei der Anmeldung nach Update auf 1.11.5 Installation von JTL-Wawi 0
Seit dem Update auf JTL Wawi 1.11.4 funktioniert der Workflow "Datei Schreiben" nicht JTL-Wawi 1.11 1
Neu JTL Wawi auf Windows Server 2025 mit SQL 2025? Installation von JTL-Wawi 6
Seit Update auf 1.11.4 Workflow für Kartonauswahl gibt error JTL Das Objekt mit Nullwert muss einen Wert haben. BrowsePk: 152325 WorkflowAktionId: 155 JTL-Wawi 1.11 1
Neu Verwendetes Guthaben auf Rechnung ausweisen User helfen Usern - Fragen zu JTL-Wawi 5
Neu Bons werden nach Wechsel auf neue Kasse nicht mehr signiert Allgemeine Fragen zu JTL-POS 0
Neu JTL auf dem Server duplizieren für Experimente Installation von JTL-Wawi 1
Neu Interne Links in den Dropdowns "Sortierung" und "Artikel pro Seite" auf follow setzen Betrieb / Pflege von JTL-Shop 1
Angebot auf EBay erhält Netto Preise aus JTL eBay-Anbindung - Fehler und Bugs 2
Update auf 1.11.4 Aktualisierung hängt -> "Keine Rückmeldung" JTL-Wawi 1.11 2
25 Gutscheine für Kunden auf Rechnung erstellen Allgemeine Fragen zu JTL-Vouchers 0
Neu AMAZON LISTER 2.0 Hochladen nicht möglich! Satus " Wartet auf Rückmeldu..." Amazon-Lister - Fehler und Bugs 0
Neu Nach Update auf JTL Shop 5.6.1 - Play/Pause Buttons im Layout!? Installation / Updates von JTL-Shop 6
Neu JTL_DirectQuery - SQL Abfrage Anzahl der Pakete auf Versandliste (DPD) User helfen Usern - Fragen zu JTL-Wawi 3
Nach Update auf 1.11.4 (von 10.13.1) werden keine Artikel unter F2 Artikel mehr angezeigt, sind aber da! JTL-Wawi 1.11 0
Neu JTL Wawo Objektverweis wurde nicht auf eine Objektinstanz festgelet JTL-Wawi - Fehler und Bugs 0
Neu Seit Update auf 1.10.15.0: eBay Fahrzeugverwendungsliste Fehler eBay-Anbindung - Fehler und Bugs 3
Neu Seit Update auf 1.11.4 läuft der CSV Abgleich ins Endlose! JTL-Ameise - Fehler und Bugs 6
Neu Nach Update komme ich nicht mehr auf die Shop Seite Installation / Updates von JTL-Shop 6
Kein vollständiges Update auf 1.11.4.0 möglich JTL-Wawi 1.11 1
Neu Darkmode auf Tablet Allgemeine Fragen zu JTL-POS 0
Neu Bei Klick auf Warenkorb Button nicht direkt Warenkorb Templates für JTL-Shop 8
Seit Update auf 1.11.4 werden Rechnungen nicht mehr korrekt gespeichert / nur Mini-Ausschnitt sichtbar JTL-Wawi 1.11 4
Neu Update WAWI 1.10.14.3 auf 1.11.4.0 Installation von JTL-Wawi 4
Seit Update auf 1.11.4: Hunderte Artikel plötzlich „in Aufträgen reserviert“, aber keine passenden Aufträge vorhanden JTL-Wawi 1.11 5
Neu Wawi 0.9.9.923 zwecks Aufbewahrungspflicht auf Windows 11 PC umziehen Installation von JTL-Wawi 5
Druck von Versandetiketten auf Zebra Drucker ZM400, ZT410 nicht möglich JTL-Wawi 1.11 8
Neu Update auf 5.6.1. – Trusted Shops Plugin erzeugt Fehlercode 500 Installation / Updates von JTL-Shop 6
Neu Onpage Composer - Entwürfe auf mehrere Kinder/Varianten importieren Betrieb / Pflege von JTL-Shop 1
Neu Hohe CPU-last auf Shopserver - JTL Shop Query? Allgemeine Fragen zu JTL-Shop 9
Update von 1.6 auf ? JTL-Wawi 1.6 4
Issue angelegt [WAWI-86213] Kartonagen nicht mehr über Workflow auswählbar nach Update auf 1.11.3 JTL-Workflows - Ideen, Lob und Kritik 1
Neu Von jetzt auf gleich Shop down "ohne" Fremdeinwirkung JTL-Shop - Fehler und Bugs 5
Bild auf Rechnung bewegt sich nicht mit den Positionen JTL-Wawi 1.11 8
Neu Nach Update auf 2.4.0 kein Bestell- & Artikeldatentransfer mehr möglich WooCommerce-Connector 0
Neu Amazon Artikel auf verschiedenen Sellercentrals aktivieren/deaktivieren? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Bilder von Kinderartikeln auf Vaterartikel kopieren via SQL Eigene Übersichten in der JTL-Wawi 2
Neu Probleme bei der Umstellung von Varkombi auf Konfigurationsartikel User helfen Usern - Fragen zu JTL-Wawi 0
Neu OPC-Bilder werden nach Update auf 5.6.0 nicht mehr generiert JTL-Shop - Fehler und Bugs 3
Neu Nach Update auf neueste Shop-Version – Datenbank plötzlich leer / Wie weiter? Backup, Rollback oder neu aufsetzen? JTL-Shop - Fehler und Bugs 9
Neu JeraSoft stellt auf Auftragsmenge um ! User helfen Usern - Fragen zu JTL-Wawi 59
Neu JTL-Wawi Aufträge die mit JTL-POS bezahlt wurde tauchen im Tagenabschluss auf JTL-POS - Fehler und Bugs 7
Neu Lieferschein: Hinweis auf Teillieferung in Ausgabe 2.0 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Umlagerungsnummer auf Lager-Packliste Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Kassensysteme der Zukunft – wie gut sind aktuelle Lösungen auf kommende Anforderungen vorbereitet? Starten mit JTL: Projektabwicklung & Migration 1
Sporadischer Absturz beim Bearbeiten eines Artikel - nach Klick auf speichern JTL-Wawi 1.11 7
Datenabgleich von WooCommerce auf JTL Wawi 1.9.7.0 JTL-Wawi 1.9 0
Neu Downgrade von 3 JTL-Shop-Lizenzen auf 1 – Frage zur Umstellung der Domains User helfen Usern - Fragen zu JTL-Wawi 1
eBay-Vorlage übernimmt nur Nettopreis – Steuersatz bleibt immer auf 0,0 % JTL-Wawi 1.11 7
QR-Code auf Rechnung JTL-Wawi 1.11 13

Ähnliche Themen