Category Archives: seo

Új scriptet telepítettem. Átirányítanám a régit, de hogyan?

Pár hete szembesültem azzal a problémával, hogy egy adott könyvtárba telepített scriptnek mennie kellett és helyébe csak egy sima index oldal került. 404-et nem akartam adni és errordocumentként sem akartam kiszolgálni az új index fájlt, így aztán maradt a rewrite. Ez a történet jó pár óráig feltartott, de két lépésben azért csak sikerült az alábbi kódokkal.


RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) /mappa/ [L,R=301]

Amennyiben a kért mappa, vagy fájl nem létezik a szerveren, akkor érvénybe lép a szabály.

Ezzel eléggé boldog is voltam jó sokáig, azonban később sikerült felfedeznem olyan indexelt oldalt is, ahol a query string galibát okozott, hiszen a domain.hu/mappa/pelda.php?id=5 URL-ből a rewrite domain.hu/mappa/?id=5 URL-t kreált.

Szerencsére ezt a gondot azért sokkal gyorsabban orvosolni tudtam.


RewriteCond %{query_string} .
RewriteRule (.*) http://www.domain.hu/mappa/$1? [R=301,L]

Így végül minden korábbi URL szép. 301-gyel adta vissza az új oldalt.

Remélem spóroltam ezzel a poszttal némi fejfájást.

Css és javascript optimalizálás YSlow módra

Pár hónappal ezelőtt kezdtem beleásni magam a weboldalak technikai jellegű optimalizálásába. Amelynek legfőbb indikátora az volt, hogy kevés dolgot utálok jobban a lassan töltődő oldalnál. A folyamat során egyik legfontosabb mérföldkő a YSlowval történő találkozás volt. Ez a firebugba beépülő extension nagyban megkönnyítette a továbbhaladást a felsorolt direktívák segítségével, azonban konkrét technikai megoldások hiányában kénytelen-kelletlen egy szuperhosszú, de annál tanulságosabb folyamat vette kezdetét…

YSlow ajánlások a css, valamint js fájlokra vetítve

Css js fájlok kifele!

Aki nem tegnap kezdett bele, bizonyára sejti, hogy ez a szakasz a külső fájlként futtatott js-ek valamint stíluslapok éltetésének lett dedikálva. A dolognak legnagyobb előnye az, hogy az inline scriptekkel és stílusokkal ellentétben a külső fájlokat a böngésző cacheli és így minden request azok méretével rövidül, mind a fájlok mérete, mint a response time figyelembevételével.
Nem olyan régen tanultam azt a szabályt, hogy a javascriptek bekérésének ideális helye pont a </body> felletti sor, ezzel gyorsítva a dokumentum minél előbbi megjelenítését.
<megjegyzés>Van olyan js, amely csak a <head> részbe pakolva működik</megjegyzés>

Minek annyi request?

Leginkább a Joomla scriptet használó oldalakon szoktam elszörnyülködni, hogy az oldal webmestere feltol 5-6 plugint, komponenst a felhasználói élmény érdekében, amelyek egyenként megkérnek minimum egy stílus lapot és gyakran jönnek a js csokrok is, amely komoly másodperces töltést igényelnek. Már szinte nem is weblap manapság, ahol legalább egy lightbox nem fut a képek dögösítésére. Magam részéről a lightbox.css tartalmát rendre belepakolom a normál css legvégére ezzel minimalizálva a requesteket. Hasonlóképpen gyakran összevonhatóak a javascriptek funkciói, de a logikai sorrendet minden esetben érdemes megtartani ha működőképes dolgokra vágyunk.

Expires header vs cache control

A YSlow ajánlása szerint a nem dinamikusan változó fájlok távoli jövőben lejáró headerjével a visszatérő látogatóknak kedvezhetünk.
A js és css valamint egy két további mime type lejáratának meghosszabbítására használjuk az alábbi .htaccess kódot:

<ifModule mod_headers.so>
<FilesMatch "\.(ico|flv|jpg|png|gif|js|css|swf)$">
Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
</FilesMatch>
</ifModule>

Amennyiben a mod_header nem betöltött Apache modul a szerveren, akkor természetesen nem fog működni a dolog, de kicsit lejjebb majd ezt a dolgot is orvosoljuk.

Gzipre fel!

Az 1.3-as Apache szerveren a mod_gzip, a 2.X verziók esetében már a mod_deflate modulok teszik lehetővé az akár 60-70%-os tömörítési rátát, amelyet a mai modern böngészők minden gond nélkül kezelnek.

Mod_gzip .htaccess kódja

<IfModule mod_gzip.c>
mod_gzip_on Yes
AddEncoding gzip .gz
mod_gzip_item_include file \.css$
mod_gzip_item_include file \.js$
</IfModule>

Mod_deflate .htaccess kódja

<IfModule mod_deflate.c>
<FilesMatch "\.(js|css)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>

Természetesen megeshet az is, hogy habár Apache szerveren van a lapunk, mégse elérhető egyik modul sem. Ilyenkor sem szabad szomorkodni, hiszen van még egy esély, amely kicsivel több módosítást igényel, de szerintem 3 perc alatt elkészül vele mindenki.
Első lépésként a js illetve a css fájlokat nevezd át php fájlkiterjesztésűvé majd css esetén a fájl legelejére helyezd ezt a kódot

<?php
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'))
{ob_start("ob_gzhandler");
header("Content-type: text/css; charset: UTF-8");
header('Expires: Thu, 15 Apr 2010 20:00:00');}
else ob_start();
?>

javascript esetén ezt

<?php if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) ob_start("ob_gzhandler"); else ob_start();
header("content-type: application/x-javascript");
header('Expires: Thu, 15 Apr 2010 20:00:00');
?>

Egyetlen dolog maradt ezután hátra, mégpedig a link illetve a script tagban a kérés módosítása az új fájlkiterjesztésnek megfelelően.

Minify

Nem másról van szó, mint a szerveren lévő fájlok méretének minimalizálásáról. Számos js illetve css online optimalizáló eszköz fellelhető az Interneten, de személy szerint én a YUI Compressor mellett teszem le a voksom, amely alkalmas mindkét fájltípus tömörítésére. Az eszköz használatát következő posztomban fogom bemutatni.

Aging delay, avagy hova ez a nagy sietség

Már régóta érlelődik bennem ez a poszt és remélem eléggé vonzónak találjátok majd a téma megvitatására.

Miről szól az aging delay?

Nem másról, mint az új oldalakat sújtó szörnyű Google filterről.

Megnyilvánulási formája?

Az újonnan regisztrált domainek előrejutásának akadályozása a találati listán a népszerű szavakra értelmezve.

Logika mögötte?

A régóta létező tartalom megbízható.

Hossza?

Gyakorlatban közel 9-12 hónap.

Hogyan enyhíthetem?

  • Amennyiben Google Webmaster Tools felhasználó vagy, az előéleted a Google kartotékrendszerben pedig patyolattiszta az oldalad tulajdonviszonyát minél előbb igazold.
  • A linkmarketing során fókuszálj a long tail szavakra, mivel alacsonyabb találat alacsonyabb fokú hátráltatást jelent. Természetesnek tűnő linkeket építs. Deep linkek valamint URL használata a link szövegeként nagyon természetesnek hat. Amennyiben a természetes linképítést nem nagyon veszi be a gyomrod, próbáld meg minél több szöveggel pozicionálni a tartalmad a linkek segítségével.
  • Ha indulni akarsz egy online projekttel, a start előtt minél előbb tudasd a Google-lel annak létezését.

Az aldomain valóban megoldást jelent

Tapasztalatom szerint a hátráltatás enyhébb, de elkerülhetetlen.

Hol olvashatok többet a témáról?

Miért számítok a kommentedre?

A személyes tapasztalatok megosztása mindenképpen fontos, hiszen a Google nagyon hasonlít a nőkre. Minden férfi másként ismeri őket.

no comment

[Linkmarketing.hu Partnerprogram] amatőr.seo.forum.hu

Nekem az egész fórum alapítóiról ez a véleményem. Ugye azok csinálták a fórumot, akik részt vettek a linkfelhő versenyben. Ott sem tudtak igazából nagydolgot felmutatni. Ezért nem szeretem, amikor lelkes amatőrök “eladják” magukat profinak. A nem hozzáértő embereknek mindent be lehet adni… Az a véleményem, hogy csak játsszák az eszüket…

Konrád

forrás

Ilyen London

A héten kedves barátom meghívására 2 napot Londonban töltöttem és ezúttal szeretném egy élménybeszámolóhoz hasonlóan a sztoriaimat megosztani veled.

Életemben most ültem először repülőgépen, a 4-5 évvel ezelőtti sárkányrepülős rémálmot leszámítva. Ez annál sokkal lágyabb és felemelőbb volt.

Londonban a legnagyobb kihívást számomra a közlekedés okozta. Minden fordítva történik, de mielőtt elfelejtem ki kell jelentenem, hogy Anglia a körforgalmak országa. Szóval vissza a reverz működéshez, a túristalátványosságok környékén a zebrákon az első csíkot megelőzi a

LOOK RIGHT felirat >>

és nem véletlenül. Magyar ember, ha balról jó akkor elindul, ha szerencséje van a jobb vállát nem símogatja meg egy kétemeletes busz. Meglátásom szerint az ottani közlekedés tervezéssel foglalkozó mérnökök jó munkát végeztek az FMEA felett őszülve.

Az utazás remek volt, de a 230-as hétfői ébredés kávé hiányában nagyon fájt. Tudtam, hogy stresszelni fogok, és a kávé ezt csak tetézné, így azt kihagytam. Egy erős kávéfüggő el tudja képzelni milyen az, amikor 1530 körül issza meg az elsőt, pláne ha azt megelőzően már 13 órája talpon van. Szóval ez így nagyon kellemetlen volt, de maga a nagy Anglia azért kárpótolta bánatom és végül minden jóra fordul a dupla capuccino gyomorba való betárazását követően.

A második nap városnézéssel telt el, tudom idióta dolog, de annyira nem hoznak lázba a látványosságok, sokkal inkább élvezem a társas interakciót az emberekkel. Az alábbiakban található a három legjobb fotó, amit sikerült összehoznom.

A környezetkímélő dohányzás

A kísértés nagy volt, de visszafogtam magam és nem vettem ilyen fémdobozből készített tálat, mert a lakás már így is tele van hamussal.

Nem tudom
lábak Londonban
Hogy mikor készítettem ezt, arról fogalmam sincs, de ékes evidenciája a fotózáshoz kapcsolható erős függőségemnek, de talán sokkal inkább annak hiányának. A kép érdekessége az az, hogy a négy cípő kivétel nélkül különböző emberhez tartozik.

Ilyen London
nők Londonban
Hát igen, azért vannak még örömök az életben. Vendéglátom bevitt a művészvilág lakóhelyére, két opciót kínált fel. Ezt a kirakatot, és egy másikat, de az egyik előtt mindenképpen le akart fotózni, hogy legyen valamilyen bizonyítéka ellenem. Mivel emelett áltunk és Zoli konformista, ezt választotta. Kiderült, hogy a másik kirakat egy meleg bár shopja.

Jól választottam ezúttal Morpeus, a piros és a kék tabi helyett az egész dobozt elszedtem.

További kellemes napot!

php átirányítás mod_rewrite nélkül

Mindenkivel előfordulhat, hogy olyan környezetben szeretne átirányítgatni, ahol a mod_rewrite nem elérhető.

Nézzük szépen végig az eseteket és az alkalmazható orvosságot.

A legegyszerűbb eset, amikot egy adott URL-t szeretnénk új helyszínre átpasszolni.
Orvosság: php fájl feltöltése a régi helyére az alábbi tartalommal

<?php
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.új-helyszín.hu" ); 
?>

Bonyolítsuk a dolgot, és játszunk olyat, hogy a mappa nevű mappára érkező lekéréseket szeretnénk mondjuk az új helyszínre átküldeni.
Hozzunk létre mondjuk egy redirection.php fájlt az alábbi tartalommal és include-dal meghívjuk a szkript első sorában.

<?php
if(stristr($_SERVER['REQUEST_URI'], '/mappa/')){
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.új-helyszín.hu/");
exit();
}
?>

Kitaláljuk, hogy szeretnénk a www vs. nem-www problémát egyszer és mindenkorra tisztázni, ezzel egységesítve a bejövő linkek támogatását és a duplikált tartalmak egy részét megszűntetve.
Szeressük jobban a www nélküli verziót és az előbb felvázolt redirect.php-be most tegyük ezt a tartalmat.

<?php  
if(stristr($_SERVER["HTTP_HOST"], 'www')){

header("HTTP/1.1 301 Moved Permanently"); header("Location: http://honlapom.hu/" . $_SERVER["REQUEST_URI"]); exit(); } ?>

De van, aki a www-t szereti, kedvezzünk nekik is egy kicsikét.

<?php  if(!stristr($_SERVER["HTTP_HOST"], 'www')){
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.honlapom.hu/" . $_SERVER["REQUEST_URI"]);  
exit();  } 
?>

További kellemes napot!

Ismét verseny

Már csak pár nap van még hátra a seocontest2008 kulcsszóval fémjelzett nemzetközi versenyből, de a 2.-ik pénzdíjas magyar seo futamon a résztvevők lassan a startvonalhoz állhatnak. A verseny főszervezője a SEO FÓRUM egyik tulajdonosa, G-easy.

A verseny összdíjazása jelen pillanatban is még dúsulás alatt áll, hála a verseny egyik főtámogatójának a Silihost tárhelyszolgáltató vállalkozásnak.

A versenyzőknek tiszta játékot és rengeteg kitartást kívánok, a kívülálló megfigyelőknek pedig jó szurkolást és sok izgalmat.

További kellemes napot!

htpasswd a házban

Nagy örömömre szolgál, hogy ezen a platformon is lehetőségem van bemutatni az i-connector.com újabb gyöngyszemét a htpasswd.i-connector.com weboldalt.

Alapvető funkcióját tekintve egy, a könyvtárak jelszavas védelméhez elengedhetetlen .htpasswd fájl tartalmát generálja.

A nagy hévben egy letölthető verzió is készült, amely segítségével a védelem másik pilléréül szolgáló .htaccess fájl is könnyűszerrel létrehozható a felhasználói név illetve a jelszó specifikálását követően.

Forrest Gumphoz hasonlóan, én sem értem be ennyivel és ha már egyszer ott voltam egy a domain átirányításhoz (www, nem www problémát rendezi el) szükséges .htaccess kód generátor formot is létrehoztam.

Na elég volt az önreklámból, most következzék a köszönetnyílvánítás. Harder, a tutorial webmestere nagyon kedves gesztussal kitette az újdonsült oldalam linkjét egy a .htaccess fájllal foglalkozó irásába, amit ezúton is nagyon köszönök.

Picit visszakanyarodnék az újszülötthöz. Design tekintetében én nagyon büszke vagyok magamra, mert szokásommal ellentétben úgy tűnik egy könnyen kezelhető felületet sikerült a felhasználók számára készítenem.

További kellemes napot mindenkinek!