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:
Kod
$cat = array('html');
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 7') )
{echo '<link rel="stylesheet" href="templates/eprofits/css/ie.php" type="text/css" title="alternative" />';}
else if( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6') )
{echo '<link rel="stylesheet" href="templates/eprofits/css/ie6.php" type="text/css" title="alternative" />';}
else if(preg_match('/('.implode('|', $cat).')/i', $_SERVER['REQUEST_URI']))
{echo '<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="templates/eprofits/scripts/spry.php" type="text/javascript"></script>
<link rel="stylesheet" href="templates/eprofits/css/more.php" type="text/css" title="alternative" />';}
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 7') )
{echo '<link rel="stylesheet" href="templates/eprofits/css/ie.php" type="text/css" title="alternative" />';}
else if( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6') )
{echo '<link rel="stylesheet" href="templates/eprofits/css/ie6.php" type="text/css" title="alternative" />';}
else if(preg_match('/('.implode('|', $cat).')/i', $_SERVER['REQUEST_URI']))
{echo '<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="templates/eprofits/scripts/spry.php" type="text/javascript"></script>
<link rel="stylesheet" href="templates/eprofits/css/more.php" type="text/css" title="alternative" />';}
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. Sam raczej nic więcej nie wymyślę, przeglądałem wiele stron o dużo gorszych parametrach (więcej zapytań, dużo większy rozmiar), które ładują się szybko. A jeśli to nie wina powyższej linijki w PHP? Jakieś inne sugestie?
Pozdrawiam,
Soulfain