Strona długo się generuje mimo optymalizacji

Witam,

stworzyłem ostatnio stronę dostępną pod adresem http://eprofits.eu. Zamówiłem usługę hostingową w Superhost , więc raczej głupio mi obarczać winą wolnego ładowania firmę hostingowa. Stronę starałem się jak najlepiej zoptymalizować by ładowała się szybko. Zerknijcie proszę na na dane dot. optymalizacji:

HTML: 3kb

CSS: 9KB

JS: 16KB

Obrazy: 46kb

Całkowita ilość zapytań dla strony głównej: 30

Poprawność xHTML jest, brak ramek, zastosowanie gzip itd. Oczywiście dane dotyczą strony głównej.

W ramach optymalizacji postanowiłem, że część skryptów będzie wczytywania dopiero jak user kliknie jakąś podstronę (czyli, że na głównej są tylko 3 skrypty, na każdej innej stronie już jest ich 6). Jako, że nie jestem specjalistą od PHP, zastosowałem taki kod:

$cat = array('html');

if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 7') )

{echo '';}

else if( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6') )

{echo '';}

else if(preg_match('/('.implode('|', $cat).')/i', $_SERVER['REQUEST_URI']))

{echo '

';}

Pierwszy warunek sprawdza czy przeglądarka usera to IE 7, jeśli tak, dorzuca alternatywny styl. Drugi działa podobnie, z tym, że pod IE 6. Ostatni warunek sprawdza czy w adresie strony znajduje się ciąg (html), a jeśli tak to wczytuje jquery, spry oraz dodatkowe style.

Zastanawiam się, czy aby ten skrypt sprawdzania paska adresu nie spowalnia ładowania się strony? Albo fakt, że zarówno style, jak i skrypty zapisałem z końcówką php zamiast js czy css? Zrobiłem to dlatego ponieważ tylko tak umiem zastosować kompresję gzip. Bardzo proszę o pomoc w zdiagnozowaniu problemu.

Pozdrawiam,

Soulfain

  1. co to za wygibasy z tym preg_match dla sprawdzenia adresu?

-wiesz Ty co to są wyrażenia regularne i do czego to to?

wystarczy tutaj

if(stripos($_SERVER['REQUEST_URI'],'.html')) echo { ... }
  1. style można odchudzić z komentarzy pustych linii etc., oszczędzisz na tym parę KB na pliku

  2. jeśli nie masz, dodaj mechanizm cache

  • no i style ładuj przed skryptami

Raczej bym postawił na firmę hostingową. Tu masz kilka opinii o nich http://www.webhostingtalk.pl/topic/182- … perhostpl/ .

Nie do końca rozumiem po co prawie wszystkie skrypty i style dajesz jako PHP.

Do rozpoznawania przeglądarki zamiast PHP proponował bym zastosowanie

@api

Zapewne widzisz po kodzie, że nie wiem co to są wyrażenia regularne :wink: dzięki Ci za napisanie tego kodu, już go skutecznie zastosowałem. Cache włączyłem, a co do plików CSS, zoptymalizuje je za pomocą narzędzia cleancss.com/, ale gdy już zakończę pracę nad stroną. Na razie co jakiś czas coś dopisuję w stylach więc wole mieć je w takiej wersji.

@Luknet

Szukałem po różnych hostingach z podobnymi parametrami i na każde znalazły się różne nieprzychylne opinie. Ciężko mi było wybierać wśród tylu firm, a SuperHost oferuje, z tego co widzę, bardzo duży roczny transfer - dlatego go wybrałem. Jeśli znasz jakieś podobnie wypadające transferowo i kosztowo alternatywy, chętnie się z nimi zapoznam :wink:

Skrypty i style znajdujące się na serwerze przerabiam na pliki php, żeby zastosować funkcję gzip. Wiem, że da się to robić inaczej, ale niestety nie wiem jak. Rozpoznawanie przeglądarki wcześniej było ustawione za pomocą komentarzy warunkowych, ale postanowiłem zredukować ilość zapytań http, dlatego zastosowałem rozwiązanie php.

Dziękuję jeszcze raz za odpowiedzi. Nie wydaje mi się jednak by to było przyczyną problemu. Oto wynik testu ładowania strony głównej za pomocą Firebuga:

http://img687.imageshack.us/img687/9079/57944115.png

Nie wiem co w Twoim przypadku uważasz za długo, ale jak dla mnie wszystko co zobaczyłem działa powiedzmy przyzwoicie.

No ale posprawdzałem szeregiem narzędzi co tam w trawie piszczy i wychodzi na to, że jedyne co w Twojej witrynie szwankuje to grafika. Twój test zresztą to samo pokazuje.

Pierwsze wrażenie po wejściu na stronę, to takie, że grafika jest toporna. Przemyślałbym jeszcze raz koncepcję layout’u.

Wywalić te wszystkie wałeczki, glossy i inne plastiki i zobaczyć jak się strona zachowa.

A jak się upierasz przy tej grafice, to chociaż sprite’a zrób. Może to pomoże.

Nie uważam aby strona wczytywała się długo, 2.5s a mam neostrade 512kb.

Ps. Do Firefox jest rozszerzenie firebug którym sprawdzisz jakie elementu ile się wczytują.

Zainstaluj :

Firebug : https://addons.mozilla.org/pl/firefox/addon/1843

Page Speed 1.4 : http://code.google.com/intl/pl/speed/pa … nload.html