Wordpress Shop relativ langsam

motte

Member
Hallo Leute;

Für das Kleingewerbe meiner Frau habe ich eine Wordpress Seite mit WooCommerce erstellt.

Das Ganze ist als Webhosting Paket bei Netcup gehostet.

Manchmal ist die Seite richtig schnell. d. H. wenn man auf einen Reiter oder link klickt dann ist zack der gewünschte Inhalt zusehn. Aber manchmal ist es so da klickt man drauf und es lädt und lädt und dann kommt irgendwann das Ergebnis. Was könnte das für eine ursache haben?

Ein Test bei PageSpeed Insights ergibt ein Ergebnis von 88/100 Punkten.

Infos laut Wordbress:

Code:
Server-Umgebung
Server-Info: nginx/1.11.10
PHP-Version: 7.2.1
PHP Post Max Size: 8 MB
PHP Time Limit:	60
PHP Max Input Vars:	1000
cURL-Version:	7.38.0, GnuTLS/3.3.8
SUHOSIN installiert:	–
MySQL-Version:	5.7.21
Maximale Upload-Größe: 8 MB
Infos laut Netcup siehe Bilder.


Braucht ihr noch weitere Infos um mir zu helfen?

LG Nico
 

Attachments

marce

Active Member
Was könnte das für eine ursache haben?
Bei Shared-Webhosting? Ggf. einfach die 25000 anderen mehr-oder-weniger-Klein-Auftritte, die mit auf der gleichen Kiste laufen. Oder Engpässe auf dem angebundenen Datenbank-Server, ...

... oder bei Wordpress irgendwelche eingebundenen externen Ressourcen, zu viele und ggf. schlechte Plugins, ...

-> Welche Plugins, welche Templates, ..., ded. Analyse des Ladenvorgangs / Seitenaufbaus (z.B. via Browser-Entwickertools) , Logs, ... - je mehr Infos desto besser.

Wenn der Hoster nicht gerade grundlegende Fehler gemacht hat - Meist ist es irgendeine externe Ressource im Wordpress oder ein suboptimal programmierters Template oder Plugin.
 
A

andreas0

Guest
Manchmal ist die Seite richtig schnell. d. H. wenn man auf einen Reiter oder link klickt dann ist zack der gewünschte Inhalt zusehn. Aber manchmal ist es so da klickt man drauf und es lädt und lädt und dann kommt irgendwann das Ergebnis. Was könnte das für eine ursache haben?
Wie der Nutzer @marce schon angedeutet hat, kannst du da nichts machen. Denn wenn der Server des Providers netcup zeitweise zu sehr ausgelastet ist oder deren Netzanbindung zeitweise, wirst du mit diesem Problem leider weiterhin leben müssen. Hier hilft aus meiner Sicht nur ein Ticket an den Support von Netcup mit diesem Problem aufzugeben und zu hoffen, dass dieses Problem seitens des Providers dauerhaft abgestellt wird. Denn sehr viele Seitenbesucher wirst du auf deiner eventuell neuen Webseite bzw. Domain noch nicht haben.
 

GwenDragon

Registered User
Es kommt darauf an ob die WP-Plugins viel Zeit verbrauchen, optimal code caching läuft, das SQL schlecht programmiert und wie die Datenbank optimiert ist.
Alles so nicht zu klären ohne dass du jemand drüber schauen lässt.
 

marce

Active Member
Könnt ihr damit was anfangen?
tja, von 0.8s bis 8s ist da alles dabei.

Abgesehen von einem Screen, auf dem ein recht großes Bild recht lange braucht - der Rest sieht danach aus, als solltest Du tiefer im Wordpress in die Optimierung einsteigen oder beim Hoster ein Ticket aufmachen, daß Dein Webhosting nicht "rund" läuft...
 

Joe User

Zentrum der Macht
Eine einzelne Messung von einem einzelnen Messpunkt zu einem einzelnen Zeitpunkt ist absolut nicht aussagekräftig.


Es sind allerdings sehr viele einzelne Ressourcen und offenbar eine extrem fette Grafik. Reduzieren, reduzieren, reduzieren.
 

motte

Member
Ich habe jetzt die Großen Grafiken bearbeitet und komme nun auf eine Page Size von Anfangs 3,4MB und 1,53 sec nun auf 1,3MB und 1,07 sec.

Schon mal ein anfang :)

Wie kann ich die Vielen Ressourcen reduzieren?
 

Orebor

He who dances with pointers
Wie Du viele Ressourcen reduzieren kannst? Indem du weniger Ressourcen einbindest. Technisch läuft das so ab, dass nämlich für jede einzelne Ressource auch eine Anfrage an den Webserver gestellt werden muss.

Das dürfte also einerseits an dem hängen, was Du so an zusätzlichen Skripten lädst (irgendwelche Adnetzwerke, Analyseskripte, etc...) aber auch an dem, was das CMS von Haus aus macht. Soweit ich weiß (ich bin kein Webentwickler) gibt es für Wordpress aber Plugins, die zum Beispiel die einzelnen Skripte in einer Datei zusammenfassen, die dann ausgeliefert werden kann. Das geht natürlich nur mit den Ressourcen, die Dein Webserver vorhält, die also nicht über ein CDN ausgeliefert werden.
 
Last edited by a moderator:

motte

Member
Das lesen bekomme ich ja hin aber ich weiß nicht wie ich es ändern kann.

Hier mal ein auszug meiner .htaccess


Code:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]

# Wordfence WAF
<Files ".user.ini">
<IfModule mod_authz_core.c>
	Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
	Order deny,allow
	Deny from all
</IfModule>
</Files>

# END Wordfence WAF

<IfModule mod_headers.c>
Header set Connection keep-alive
</IfModule>

# Deflate Compression by FileType
<IfModule mod_deflate.c>
 AddOutputFilterByType DEFLATE text/plain
 AddOutputFilterByType DEFLATE text/html
 AddOutputFilterByType DEFLATE text/xml
 AddOutputFilterByType DEFLATE text/css
 AddOutputFilterByType DEFLATE text/javascript
 AddOutputFilterByType DEFLATE application/xml
 AddOutputFilterByType DEFLATE application/xhtml+xml
 AddOutputFilterByType DEFLATE application/rss+xml
 AddOutputFilterByType DEFLATE application/atom_xml
 AddOutputFilterByType DEFLATE application/javascript
 AddOutputFilterByType DEFLATE application/x-javascript
 AddOutputFilterByType DEFLATE application/x-shockwave-flash
</IfModule>

# turns cache on for 1 month
<IfModule mod_expires.c>
 ExpiresActive On
 ExpiresByType text/css "access plus 1 month"
 ExpiresByType text/javascript "access plus 1 month"
 ExpiresByType text/html "access plus 1 month"
 ExpiresByType application/javascript "access plus 1 month"
 ExpiresByType image/gif "access plus 1 month"
 ExpiresByType image/jpeg "access plus 1 month"
 ExpiresByType image/png "access plus 1 month"
 ExpiresByType image/x-icon "access plus 1 month"
</IfModule>
<ifmodule mod_headers.c>
 <filesmatch "\\.(ico|jpe?g|png|gif|swf)$">
  Header set Cache-Control "max-age=2592000, public"
 </filesmatch>
 <filesmatch "\\.(css)$">
  Header set Cache-Control "max-age=604800, public"
 </filesmatch>
 <filesmatch "\\.(js)$">
  Header set Cache-Control "max-age=216000, private"
 </filesmatch>
</ifmodule>

Passt die so oder würdet ihr etwas ändern?
 

DeaD_EyE

Blog Benutzer
Bezüglich der Ressourcen sollte man bedenken, dass der Server HTTP/2 einsetzt und es somit sogar kontraproduktiv sein kann Ressourcen von diesem Server zusammen zu fassen.

Das setzt natürlich voraus, dass der Server nicht überlastet ist.
 
Top