Hallo zusammen,
ich heiße Marco und bin neu hier. Eigentlich bin ich Webdesigner und habe nur etwas Grundkenntnisse was Apache, PHP, MySQL und Co angeht. Daher weiß auch gerade gar nicht, wie mein Problem heißt
Ich kümmere mich quasi nebenbei um die Performance eines Kunden (online Shop). Mir und dem Kunden ist aufgefallen, dass bei mehrfachen Klicks hintereinander auf interne Links (z.B. die Links in der Menü-Leiste links mit den Produktkategorien) die Ladezeiten sich zu addieren scheinen. Klicke ich also 20 x schnell hintereinander auf einen Link, so ist die Wartezeit 5-10 Sekunden, bis überhaupt eine Reaktion vom Server kommt. Ich denke mal, dass das die Performance (die hier problematisch ist) extrem verschlechtert.
Ein gleicher Test bei Shops wie Zalando und Co zeigt mir, dass es auch anders geht. Dort werden Klicks, die direkt mehrfach hintereinander erfolgen, scheinbar ignoriert. Die Seite lädt trotz mehrfacher Aufrufe auf denselben Link im Menü.
Was ich probiert habe:
Aus absoluten Verlinkungen habe ich relative gemacht. Also aus http://www.meincupcake.de/shop/Backzubehoer-und-Kuechenhelfer/ habe ich /shop/Backzubehoer-und-Kuechenhelfer/ gemacht (so arbeitet Zalando). Leider ohne Erfolg. Domain ist also: http://www.meincupcake.de/shop/
Wir haben auch diverse Einstellungen an der apache2.conf verändert, die aber auch nicht zum Erfolg geführt haben. Sind es vielleicht Kniffe in der htaccess?
Ich denke mal einem Programmierer wird sofort auffallen, worum es hier geht. Mir fällt leider nichts mehr ein
Ich freue mich auf Eure Ratschläge. Vielen Dank schonmal!!
Marco
htaccess Auszug Module
<IfModule mod_deflate.c>
# Force deflate for mangled headers developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping/
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
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>
# HTML, TXT, CSS, JavaScript, JSON, XML, HTC:
<IfModule filter_module>
FilterDeclare COMPRESS
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/css
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/plain
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/x-component
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/javascript
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/json
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xhtml+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/rss+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/atom+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/vnd.ms-fontobject
FilterProvider COMPRESS DEFLATE resp=Content-Type $image/svg+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/x-font-ttf
FilterProvider COMPRESS DEFLATE resp=Content-Type $font/opentype
FilterChain COMPRESS
FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no
</IfModule>
<IfModule !mod_filter.c>
# Legacy versions of Apache
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
</IfModule>
</IfModule>
## EXPIRES CACHING ##
<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>
Header always append X-Frame-Options SAMEORIGIN
# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
<filesMatch "\\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
Header set Last-Modified "Mon, 31 April 2016 00:00:00 GMT"
</filesMatch>
<filesMatch "\\.(css)$">
Header set Cache-Control "max-age=2592000, public"
Header set Last-Modified "Mon, 31 April 2016 00:00:00 GMT"
</filesMatch>
<filesMatch "\\.(js)$">
Header set Cache-Control "max-age=2592000, private"
Header set Last-Modified "Mon, 31 April 2016 00:00:00 GMT"
</filesMatch>
<filesMatch "\\.(xml|txt)$">
Header set Cache-Control "max-age=216000, public, must-revalidate"
</filesMatch>
</ifModule>
# END Cache-Control Headers
<IfModule mod_php.c>
php_flag session.use_trans_sid 0
</IfModule>
# BEGIN Turn ETags Off
<IfModule mod_headers.c>
Header unset ETag
</IfModule>
FileETag None
# END Turn ETags Off
# BEGIN Remove Last-Modified Header
<IfModule mod_headers.c>
Header unset Last-Modified
Header unset Keep-Alive
Header set Keep-Alive timeout=117200,max=172000
</IfModule>
# END Remove Last-Modified Header
<IfModule mod_php5.c>
# Add this line
php_value max_input_vars 10000
</IfModule>
php_value session.gc_maxlifetime 600000
<FilesMatch "\.(js|css|jpg|png|jpeg|gif|xml|json|txt|pdf|mov|avi|otf|woff|ico|swf)$">
RequestHeader unset Cookie
Header unset Cookie
Header unset Set-Cookie
</FilesMatch>
## php_value session.use_trans_sid 0
<FilesMatch "(\.(bak|config|dist|fla|inc|ini|log|psd|sh|sql|swp)|~)$">
## Apache 2.2
Order allow,deny
Deny from all
Satisfy All
## Apache 2.4
# Require all denied
</FilesMatch>