SEO URL znovu a lépe

MyEgo.cz

home foto blogy mywindows.cz kontakt

SEO URL znovu a lépe

PHP 12.10.04

Trochu jsem zkoumal SEO URL, tedy URL pěkná pro člověka i pro vyhledávače.

V současnosti je moderní používat URL typu http://domena.com/clanek/nazev-clanku. Tato SEO URL mají smysl jak pro vyhledávače, tak pro člověka, a mnohem lépe se pamatují než index.php?id=a12d45eef789b.

Jsou zde ale jisté nevýhody:

  • Některé browsery, jmenovitě MSIE, načítají při shlédnutí článku CSS znovu, nedrží je v cache, přestože již mají v cache CSS z domény, pokud je URL /clanek/nazev-clanku zpracováváno pomocí FilesMatch, tedy:
    <FilesMatch "^clanek$">
    ForceType application/x-httpd-php
    </FilesMatch>
  • FilesMatch se nedá použít na Microsoftím IIS, umí jej jenom Apache, čímž se omezuje portabilita zdrojového kódu projektu, u open-source projektů je to poměrně závažná věc,
  • Protože http://domena.com/clanek/nazev-clanku a http://domena.com/ jsou pro search-engines různé, nesčítá se jejich page-rank, pokud někdo odkazuje na článek, neposiluje tím přímo page-rank domény, a naopak.

Řešením je začít používat SEO URL typu:

http://domena.com/?clanek=nazev-clanku

Výhody?

  • Není nutná podpora pro .htaccess a mod_rewrite.
  • Není nutná podpora FilesMatch, SEO URL budou tedy fungovat i na IIS.
  • CSS nebude žádným browserem znovu načítáno.
  • Pro vyhledávače by toto řešení mělo být ekvivalentní s FilesMatch řešením.

Implementuji tyto URL jako alternativní do BLOG:CMS


Komentáře

  1. 1 Ondřej Kokeš 12.10.04, 06:10:22
    FB

    "mod_rewrite" >> vzdyt ty na SEO URI ani mod_rewrite nepouzivas, takze je jedno, ze tato "SEO" uri nepotrebuje jeho podporu.

  2. 2 Petr Bříza 12.10.04, 07:10:18
    FB

    Rád bych viděl pro tvé tvrzení důkazy.
    1. FilesMatch neznám, ale zjevně jde o serverovou technologii, tedy nemá nic společného s tím, jak prohlížeče drží CSS v cache. Pokud vím, tak MSIE je (stejně jako jiným prohlížečům) jedno, jakou adresu má stránka, která daný CSS soubor obsahuje. Hlídá si pouze URL tohoto CSS, a pokud soubor s tímto URL již byl načten, pak jej nezkouší načítat znovu (pokud tedy uživatel nezkusí refresh). Možná by se hodilo problém spíše více objasnit, než jen rýpat do IE.
    2. "Portabilita" projektů má řádově mnohem větší problémy, než je tento. Navíc v ASP.NET adekvátní technologie existuje. A také existují ISAPI filtry.
    3. Nejsem SEO specialista, ale to s tím PageRankem je blbost. Stránky v určité doméně mají podstatnou část pageranku společnou. To je neoddiskutovatelné, přestože ty tvrdíš něco jiného.

  3. 3 Radek Hulán 12.10.04, 07:10:27
    FB

    [2] zapni si Proxomitron, který ti ukáže veškeré GET HTTP požadavky, a uvidíš..

  4. 4 Radek Hulán 12.10.04, 08:10:28
    FB

    [2] ale já vždy vím, o čem mluvím ;-) Na rozdíl od jiných lidí...

    Page rank 6/10:
    http://myego.cz/
    Page rank 0/10 tento článek:
    http://myego.cz/item/seo-url-znovu-a-lepe...
    Page rank 5/10 pro tento článek:
    http://myego.cz/?itemid=622...

    Ok?

  5. 5 whoa-framework.org 12.10.04, 09:10:11
    FB

    muze mi nekdo vysvetlit, jak si po par dnech (hodinach/minutach/dosadte si sami..) zapamatovava http://www.server.cz/clanek/Jak-jsme-se-hezky-poveselili-v-Radhosti... ? ja na to porad nemohu prijit = nejsem schopen (a hlavne ochoten) si to pamatovat - od toho jsou bookmarky atd. a tem je uplne jedno, jestli bude url clanek?id=4324320. prosim o vysvetleni, protoze mi to cele pripomina onanii na nicim. diky :)

    p.s. neberu argumenty, ze v novinach to vypada lip - nikdo si z novin (papirovych) neklikne, a kdyz uz si da tu namahu, poctive cely odkaz vytukat (asi tak 2 lidi za rok..) , uvita naopak spis variantu clanek?id=234 nez clanek/a-zase-dalsi-nesmyslny-nazev-clanku.

  6. 6 Petr Weida 12.10.04, 09:10:20
    FB

    [4] Na to je jednoduchá odpověď. Ten rozdíl mezi Toolbar Pagerankem 0 a 5 je způsobený tím, že Toolbar hodnotí stránky bez parametrů za otazníkem - proto TPR 5 u článku, který je ze dneška. Správné TPR je samozřejmě 0.

    Nesmíme ale zapomenout že TPR a PR rozhodně není to samé.

  7. 7 martins 12.10.04, 09:10:30
    FB

    [5] Je to celkem prosté. Třeba že napíšeš do adresy v prohlížeči "hu" a history vysype všechno od "hu". Například myego.cz/item/dokonala-konfigurace-firefoxu takže potom víš že to zřejmě bude o dokonalé konfiguraci firefoxu a ne o nicneříkajícím id=4324320 :-)

  8. 8 dgx 12.10.04, 09:10:52
    FB

    [4] právě proto se mi Radku na BLOG:CMS nelíbí standardní FancyURL. Pro jeden článek může systém vygenerovat hned několik odlišných URL, např:
    myego.cz/item/jak-na-spam-pod-linuxem
    myego.cz/item/jak-na-spam-pod-linuxem/category/suse-linux
    myego.cz/item/jak-na-spam-pod-linuxem/catid/5
    myego.cz/item/jak-na-spam-pod-linuxem/category/suse-linux/blogid/1

    chtělo by to lépe odladit. Omlouvám se, jestli už je to vyřešené.

  9. 9 Ján "johno" Suchal 12.10.04, 09:10:53
    FB

    [4] http://www.top25web.com/pagerank.php... mi vyhodil

    http://myego.cz/ 6/10
    http://myego.cz/item/seo-url-znovu-a-lepe... 0/10
    http://myego.cz/?itemid=622... 0/10

  10. 10 Radek Hulán 12.10.04, 11:10:20
    FB

    [8] právě to řeším, přes proměnné za otazníkem, nikoliv přes FilesMatch.. ;-)

  11. 11 Radek Hulán 12.10.04, 11:10:21
    FB

    [6] ale o tom přece Petře píšu.. lépe čti. To je přesně důvod, proč od FilesMatch ustupuji, a směřuji k proměnným typu ?article=xyz

  12. 12 Petr Weida 13.10.04, 06:10:14
    FB

    [11] Teď myslím, že jsi špatně pochopil ty mě. Jsem přesvědčený, že mezi přidělováním PR URL:

    http://domena.com/?clanek=nazev-clanku...
    http://domena.com/clanek/nazev-clanku...

    není rozdíl, jediné v čem je, že Toolbar špatně přiděluje TPR té první variantě.

    Podle mě tou změnou nic nezískáš. Žádné zlepšení PR homepage. Je to ale pouze můj názor.

  13. 13 Petr 13.10.04, 10:10:21
    FB

    Výhoda ?clanek=nazev-clanku je podle mě pouze v tom, že můžeš do URL nacpat háčky a čárky, takže bude google opravdu reagovat na hledaná slova (bezohledu na to, že bude adresa mnohem nepřehlednější)

  14. 14 Jiri Zahradil 13.10.04, 11:10:20
    FB

    Například CMS drupal lze přepínat mezi SEO url a url kde "SEO cesta" je jako parametr v URL, tedy:

    example.com/item/nazev-clanku
    nebo
    example.com/?q=item/nazev-clanku

    Myslím, že takto by se to nechalo vyřešit poměrně jednoduše. Jenoduché přeparsování v index.php přesměruje podle parametru request do stávajících souborů (item,category,...)

    FilesMatch: Pokud je možné alespoň specifikovat chybovou stránku 404 - je možné pověsit na tuto stránku ovladač který vrátí případnou stránku podle dotazovaného url. Chybové stránky jdou navolit na různých serverech napříč platformami! Sám to používám.

  15. 15 Marabu 13.10.04, 02:10:15
    FB

    Imho vyrabet url jako funkce($nadpis_clanku) je trosku zvrhle. Tomuto clanku by daleko vic nez 'seo-url-znovu-a-lepe' sedelo napriklad 'seo-url-2' popr. 'seo/url-2'. I kdyz porad je to lepsi nez zvrhle doctype-nerika-nic-podstatny-je-mime-type, instalace-php-5-mysql-4-0-a-apache-2-na-windows atd. Takove nazvy jsou mozna dobre pro vyhledavac ale pro cloveka naprosto nepouzitelne - parametr o delce 47 znaku, pridam-li k tomu nazev server + cestu, dostanu se na 75 znaku coz uz je povazlive mnoho. Zatimco cesta 'http://example.org/lcd/15/adi/'... ma svoji logiku a metoda jak se podivat na sony ci thompson je naprosto jednoznacna, nazvy na blogu jsou az prilis pro stroje a az prilis malo pro lidi.

    URL o delce 75 znaku nekomu poslu pres sms s dodatkem jen tezko... nedejboze ho zkusit nadiktovat telefonem nebo nekomu psat na papir. Coz jsou mimochodem veci ktere obcas pouzivat musim.

  16. 16 dgx 13.10.04, 04:10:40
    FB

    seo-odkazy-nejen-pozitivni.php

  17. 17 Honza 14.02.05, 11:02:36
    FB

    Mám jednu poznámku. Když na stránce http://domena.cz vytvořím odkaz /clanek/nazev-clanku, tak v RewriteRule v Apache nechám přepsat skrytě URL na mou klasickou formu index.php?promena=hodnota&promena=hodnota. Takto se přesměrování provede, ale nezobrazí se mi obrázky, které jsou na stránce, jelikož jsou relativně. Z URL se totíž pro obrázky bere nová cesta /clanek/ a tam vzniká problém. Co s tím? Pomůže mi někdo? Díky moc.

  18. 18 Matess 23.02.05, 12:02:22
    FB

    [17] Musis si pri presmerovani na puvodni formnu
    zjistit o kolik relative slozek jsi vis, nez puvodne
    a indexu predat informaci typu ../ ,../../ a tu potom pridat pred vsechny relativni adresy.

    P.S. omlouvam se za tu cestinu

  19. 19 pyty 21.05.05, 05:05:07
    FB

    na osobnych a podobnych relativne "statickych strankach" to pouzivam tiez tak.. ale IMHO je to na weblogu nepouzitelne - (ked hovorime o SEO) to mam do mety pisat nieco v zmysle (ospravedlnujem sa za chyby) - if (!isset(GET_['clanek'])) echo "<meta name="robots" contents="noindex, follow">"; else echo "<meta name="robots" contents="index, follow">" - nebudem preca na hlavnej stranke indexovat nie ?? a to je len jedna z mala veci, ktora ma napadla... samozrejme, keby si s tym dal niekto trochu namahy, dal by sa cely output CMS urobit do jedineho index.php ale :-) ..

  20. 20 Martin 20.01.06, 01:01:06
    FB

    [18] Pokud máš web na doméně 2. nebo 3. řádu, tak piš <img src="/obrazky/obrazek.png"> (důležitý je to lomítko na začátku). Adresář s obrázkama umísti do "kořenového adresáře webu". (v tomto případě bude mít url "http://uvwxyz.example.com/obrazky/..." nebo "http://www.example.com/obrazky/...")

  21. 21 I.C. 16.09.06, 10:09:16
    FB

    [17] Tohle se da elegantne vyresit pouzitim tagu
    <base href="cesta" />
    v sekci head