EZ Zoom Full-Page Cache mit Magento unter nginx verwenden

EZ Zoom Full-Page Cache mit Magento unter nginx verwenden

Magento-Shops lassen sich durch den Einsatz des Zoom Full-Page Caches erheblich beschleunigen, da sich bei gecachten Seiten der komplette PHP-MySQL-Stack umgehen läßt. Seitenladezeiten von 100 - 200ms sind so keine Seltenheit mehr.

Der Zoom Full-Page Cache läßt sich natürlich auch mit nginx nutzen. Wir stellen Ihnen dazu schon eine fertige Konfiguration zur Verfügung. Um diese zu übernehmen, gehen Sie in ISPConfig zum Optionen-Reiter Ihrer Website und platzieren Sie den Cursor im (leeren) nginx-Direktiven-Feld:

Rechts neben dem Feld finden Sie einige vorgefertigte Konfigurationen. Klicken Sie auf den Link [Magento + EZ Zoom Full Page Cache], um die dazugehörige nginx-Konfiguration in das nginx-Direktiven-Feld zu übernehmen:

Die Konfiguration sollte jetzt in das nginx-Direktiven-Feld übernommen worden sein:

Stellen Sie sicher, daß in den Zeilen...

set $code default;   # This should match your MAGE_RUN_CODE

... und...

            fastcgi_param  MAGE_RUN_CODE default; ## Store code is defined in administration > Configuration > Manage Stores

... der korrekte Store-Code Ihres Online-Shops eingetragen ist (Standardwert: default).

Speichern Sie die Einstellungen; nach ca. ein bis zwei Minuten sollten die Änderungen übernommen worden und der Cache funktionsfähig sein, sofern Sie das Zoom Full-Page Cache-Modul in Magento aktivert haben.

Hier ist die komplette Konfiguration, die im nginx-Direktiven-Feld stehen sollte:

set $ua '';
set $zget /zget;

# User Agent theme overrides will be cached to their own sub-directories
# if ( $http_user_agent ~ iphone ){
#    set $ua '/default/default/iphone';
# }

set $mzi /ZOOM_INDEX;
set $code default;   # This should match your MAGE_RUN_CODE

# Multi-language stores use different codes on the same domain. Use the 'store' cookie to detect this
# if ($cookie_store) { set $code $cookie_store; }

set $zoombase        /var/zoom/$code$ua;
set $zoomuri         $zoombase$uri;     # This will be pages without toolbars (products, CMS, etc)
set $zoomuriget     $zoomuri$zget;     # Here is our initial category variable

# By default, we will always check for the first page of a potential category page
set $p 1;

# Initialize toolbar state according to Zoom cookies.
set $dir   $cookie_zoom_dir;
set $limit $cookie_zoom_limit;
set $mode  $cookie_zoom_mode;
set $order $cookie_zoom_order;

set $zoomg $zoomuriget;

# Initialize layered navigation variables
set $cat    "";
set $price  "";

# Over-ride toolbar state with GET variables (if they exist)
if ($arg_p)     {
  set $p     $arg_p;
}
if ($arg_dir)   {
  set $dir   $arg_dir;
}
if ($arg_limit) {
  set $limit $arg_limit;
}
if ($arg_mode)  {
  set $mode  $arg_mode;
}
if ($arg_order) {
  set $order $arg_order;
}

# Layered navigation will be appended in alphabetical order to the final string
if ($arg_cat)   {
  set $cat   /cat/$arg_cat;
}
if ($arg_price) {
  set $price /price/$arg_price;
}

set $control &dir=$dir&limit=$limit&mode=$mode&order=$order;

# If there is no given toolbar state, look for symlink of the default state (at the given page)
if ($control = "&dir=&limit=&mode=&order=") {
  set $zoomg $zoomg/p/$p;
}

# Otherwise, construct complete cache filename (this requires normalized URL for consistent hits)
if ($zoomg = $zoomuriget) {
  set $zoomg $zoomg/p/$p/dir/$dir/limit/$limit/mode/$mode/order/$order$cat$price;
}

# A fix to redirect the index page to the proper file
#if ($request_uri = /) {
#  set $zoomuri $zoomuri$mzi;
#}

# Append the "ZOOM_INDEX" to the file category path
set $zoomg $zoomg$mzi;

# Now clean the filename of irregular characters
if ($zoomg ~ (.*)/price/([0-9]+),([0-9]+)(.*)) {
  set $zoomg $1/price/$2%2C$3$4;
}

client_max_body_size 100M;

location / {
        index index.html index.php; ## Allow a static html file to be shown first
        try_files $zoomuri $zoomg $uri $uri/ @handler; ## If missing pass the URI to Magento's front handler
        expires 30d; ## Assume all files are cachable
}

## These locations would be hidden by .htaccess normally
location /app/                { deny all; }
location /includes/           { deny all; }
location /lib/                { deny all; }
location /media/downloadable/ { deny all; }
location /pkginfo/            { deny all; }
location /report/config.xml   { deny all; }
location /var/                { deny all; }

location /var/export/ { ## Allow admins only to view export folder
        auth_basic           "Restricted"; ## Message shown in login window
        auth_basic_user_file /var/www/example.com/.htpasswd; ## See /etc/nginx/htpassword
        autoindex            on;
}

location ~ \.php/ { ## Forward paths like /js/index.php/x.js to relevant handler
        rewrite ^(.*\.php)/ $1 last;
}

location /skin/m/ {
        rewrite ^/skin/m/([0-9]+)(/.*\.(js|css))$ /lib/minify/m.php?f=$2&d=$1 last;
}

location @handler { ## Magento uses a common front handler
        rewrite / /index.php;
}

location @php { ##merge##
            fastcgi_param  HTTPS $fastcgi_https;
            fastcgi_param  MAGE_RUN_CODE default; ## Store code is defined in administration > Configuration > Manage Stores
            fastcgi_param  MAGE_RUN_TYPE store;
}

 

Zurück zu den Anleitungen

Finden Sie den passenden Tarif

Unser Tarifberater hilft Ihnen dabei, das passende Paket zu finden. Bei Fragen berät Sie unser Sales-Team sehr gerne unter +49 (0) 4131 / 22 78 1-25 oder sales@timmehosting.de.

Bitte beachten Sie: Der Tarifberater dient nur der groben Orientierung. Ihr tatsächlicher Bedarf kann durch den Ressourcenbedarf Ihrer Anwendung(en), tageszeitabhängige/saisonale/aktionsbedingte Schwankungen des Besucheraufkommens, geplantes Wachstum und weitere Faktoren von der Empfehlung abweichen.

  • 1
  • 2
  • 3
  • 4
  • 5

Was möchten Sie hosten?

Möchten Sie einen oder mehrere Shops hosten? (Eine Multishop-Installation gilt als ein Shop.)

Möchten Sie eine oder mehrere Websites hosten? (Eine Multisite-Installation gilt als eine Website.)

Wieviele Besucher haben Sie insgesamt pro Tag?

Wieviele Besucher haben Sie insgesamt pro Tag?

Wieviele Besucher haben Sie insgesamt pro Tag?

Wieviele Artikel haben Sie insgesamt in Ihrem Shop/Ihren Shops (inkl. Varianten)?

Wieviele Artikel haben Sie insgesamt in Ihrem Shop/Ihren Shops (inkl. Varianten)?

Wieviel Speicherplatz benötigen Sie insgesamt?

Wieviel Speicherplatz benötigen Sie insgesamt?

Wieviel Speicherplatz benötigen Sie insgesamt?

Wir empfehlen Ihnen unser

Managed vServer Hosting

Zu den Managed vServer Paketen

Managed Server Hosting

Zu den Managed Server Paketen

Private Cloud Hosting

Zu den Private Cloud Paketen