2016-04-29 4 views
1

Ich habe ein Problem mit einem benutzerdefinierten Thema, das ich für WordPress erstellt habe. Die Wartezeit auf der Website beträgt ca. 20 Sekunden.Lange Wartezeit auf WordPress-Website

habe ich versucht, die folgenden ohne Erfolg:

  • Alle deaktiviert Plugins.
  • Alle Skripte, einschließlich WordPress, wurden aus dem Thema entfernt.
  • Auf einen anderen Host umgeschaltet.

Wer weiß, was könnte das Problem sein? Ich weiß, dass die Wartezeit in Firebug bedeutet, auf die Antwort des Servers zu warten, aber das Problem nicht lösen kann.

Firebug showing long waiting time for page request

+0

Welche Dokumente lange Zeit zum Laden nehmen? –

+0

@PedroLobito alle Website-Seiten – Jason

+0

Verwenden Sie ein Shared Hosting oder vps? –

Antwort

2

Sie sollen diese gelten bestimmte Regeln etwas Glück haben:

  1. Verwenden Sie die W3 Total Cache Plugin (es ist die beste in seiner Nische) oder eine andere Cache-Plugin.
  2. Verwenden Sie optimierte Bilder, wenn Ihr Thema einige hat.
  3. Komprimieren Sie alle Ihre CSS- und JavaScript-Dateien.
  4. Verwenden Sie ein Lazy Load-Plugin, um Text schnell, aber Bilder im Hintergrund zu laden.
  5. Stellen Sie sicher, dass Sie in den meisten Fällen kein Framework verwenden, das die Ladezeit der Seite verlangsamt.
  6. Verwenden Sie ein Content Delivery Network (CDN).
  7. Fügen Sie einen Expires Header zu statischen Ressourcen hinzu.
  8. Verwenden Sie statisches HTML, wo es möglich ist, da es schnell geladen wird.
  9. Stellen Sie sicher, dass in Ihrem Design kein unnötiger zusätzlicher Code oder Dateien vorhanden sind.
  10. Wenden Sie alle genannten Schritte an und lesen Sie weiter über Seitenoptimierungstechniken, um gute und langfristige Ergebnisse zu erzielen.
2

Klingt wie es ist ein PHP-Problem. Haben Sie versucht, PHP zu umgehen, um zu sehen, ob das tatsächlich das Problem ist? Um dies zu testen, würde ich empfehlen, ein Caching-Plugin wie Cache Enabler zu installieren und dann die advanced snippet auf Ihrem Ursprungsserver zu implementieren, um PHP zu umgehen, wenn der zwischengespeicherte HTML-Code abgerufen wird, der vom Plugin generiert wurde.

Erweiterte Snippet für Apache:

# Start Cache Enabler 
<IfModule mod_rewrite.c> 
RewriteEngine On 

<IfModule mod_mime.c> 
# webp HTML file 
RewriteCond %{REQUEST_URI} /$ 
RewriteCond %{REQUEST_URI} !^/wp-admin/.* 
RewriteCond %{REQUEST_METHOD} !=POST 
RewriteCond %{QUERY_STRING} ="" 
RewriteCond %{HTTP_COOKIE} !(wp-postpass|wordpress_logged_in|comment_author)_ 
RewriteCond %{HTTP:Accept-Encoding} gzip 
RewriteCond %{HTTP:Accept} image/webp 
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/cache-enabler/%{HTTP_HOST}%{REQUEST_URI}index-webp.html.gz -f 
RewriteRule ^(.*) /wp-content/cache/cache-enabler/%{HTTP_HOST}%{REQUEST_URI}index-webp.html.gz [L] 

# gzip HTML file 
RewriteCond %{REQUEST_URI} /$ 
RewriteCond %{REQUEST_URI} !^/wp-admin/.* 
RewriteCond %{REQUEST_METHOD} !=POST 
RewriteCond %{QUERY_STRING} ="" 
RewriteCond %{HTTP_COOKIE} !(wp-postpass|wordpress_logged_in|comment_author)_ 
RewriteCond %{HTTP:Accept-Encoding} gzip 
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/cache-enabler/%{HTTP_HOST}%{REQUEST_URI}index.html.gz -f 
RewriteRule ^(.*) /wp-content/cache/cache-enabler/%{HTTP_HOST}%{REQUEST_URI}index.html.gz [L] 

AddType text/html .gz 
AddEncoding gzip .gz 
</IfModule> 

# default HTML file 
RewriteCond %{REQUEST_URI} /$ 
RewriteCond %{REQUEST_URI} !^/wp-admin/.* 
RewriteCond %{REQUEST_METHOD} !=POST 
RewriteCond %{QUERY_STRING} ="" 
RewriteCond %{HTTP_COOKIE} !(wp-postpass|wordpress_logged_in|comment_author)_ 
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/cache-enabler/%{HTTP_HOST}%{REQUEST_URI}index.html -f 
RewriteRule ^(.*) /wp-content/cache/cache-enabler/%{HTTP_HOST}%{REQUEST_URI}index.html [L] 
</IfModule> 
# End Cache Enabler 

Nginx:

server { 

    set $cache_uri $request_uri; 

    # bypass cache if POST requests or URLs with a query string 
    if ($request_method = POST) { 
     set $cache_uri 'nullcache'; 
    } 
    if ($query_string != "") { 
     set $cache_uri 'nullcache'; 
    } 

    # bypass cache if URLs containing the following strings 
    if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml)") { 
     set $cache_uri 'nullcache'; 
    } 

    # bypass cache if the cookies containing the following strings 
    if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in") { 
     set $cache_uri 'nullcache'; 
    } 

    # custom sub directory e.g. /blog 
    set $custom_subdir ''; 

    # default html file 
    set $cache_enabler_uri '${custom_subdir}/wp-content/cache/cache-enabler/${http_host}${cache_uri}index.html'; 

    # webp html file 
    if ($http_accept ~* "image/webp") { 
     set $cache_enabler_uri '${custom_subdir}/wp-content/cache/cache-enabler/${http_host}${cache_uri}index-webp.html'; 
    } 

    location/{ 
     gzip_static on; # this directive is not required but recommended 
     try_files $cache_enabler_uri $uri $uri/ $custom_subdir/index.php?$args; 
    } 

    ... 

} 
Verwandte Themen