SEO URL znovu a lépe
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
ahttp://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
amod_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…
Chvála Microsoft Frontpage 2002
Potřeboval jsem dnes v práci, kromě ladění Oracle databáze na Solarisu, a
zprovoznění Cisco 6500 switche, editovat některé korejské texty v UTF-8
.
Jsou to podklady dodané klasicky v MS Wordu, a bylo je nutno extrémně rychle
převést do XHTML. Znělo to jako trivialita, jednoduchý copy-and-paste job na
deset minut.
Nicméně, nebylo to až tak snadné. Nakonec jsem s tím strávil skoro 2 hodiny…
Nejdříve jsem otevřel PSPad. Ten podporuje sice UTF-8
,
ale rozhodně ne nativně. Při copy-and-paste korejských znaků z MS Wordu je PSPad
zobrazil jako slušivé čtverečky (instaloval jsem si samozřejmě nejprve korejskou
znakovou sadu do Windows). Tak jsem otevřel JEdit, a rovněž
čtverečky. Dreamweaver MX 2004 nabídnul … čtverečky. TextPad nabídnul,
co jiného než, čtverečky. Tak jsem spustil ze zoufalství stažený UltraEdit32,
přepnul jej na Unicode, a opět čtverečky.
Zachránila mě FrontPage 2002. Vzpomněl jsem si, že na CD Microsoft Office XP Professional tento produkt byl, akorát jsem jej neinstaloval. Tak jsem to nainstaloval, pak copy-and-paste, a korejština!
FrontPage 2002 je celkově překvapivě dobrý produkt. Stačí
překonat odpor k Microsoftu. Je zdarma v sadě Office XP Pro, při editaci nijak
nemrší zdrojový text (což jsem dle internetových diskusí neočekával!), při stisku
klávesy Enter udělá korektně uzavřený p
tag, při stisknutí
tlačítka seznamu dělá XHTML validní tagy ul
a li
.
FrontPage má navíc i český, anglický, a třeba i ten korejský spell-checker. A od věci není ani reálné preview stránky v jádru MSIE 6.0. Dremweaver MX 2004 na hodně složitějších layoutech selhává, jeho layout engine je ještě horší než ten MSIE 6.0. V příští verzi má mít ale DMX jako engine Presto, jádro Opery, to by bylo mnohem zajímavější.
Celkově, FrontPage 2002 stojí za Vaši pozornost, pokud máte Windows. Za tu
cenu nic lepšího není, a nativní podpora UTF-8
je skvělá věc.
PS: Teď to zkouším doma pod SuSE 9.1 Linuxem, který jede pochopitelně v Unicode, korejský wordovský dokument jsem bez problémů otevřel pod open-source OpenOffice 1.1, copy-and-paste jsem udělal do open-source Quanta Plus 3.2 editoru, a vše bez problémů. Testoval jsem i open-source Kate 3.3, a taky ok.
Nejenže toho umí Linux 100x více než Windows, funguje rychleji, ale
taky správně. A hlavně má bash
. Vlastně jsem chtěl říci: Vivat Linux!
MySQL “select”: Windows nebo Linux?
V předchozím testu jsem se zaměřil na rychlost MySQL databáze pro vkládání záznamů, INSERT INTO
,
v tomto testu se podívám na věc, která je v praxi častější, a to vyhledávání SELECT LIKE '%string%'
.
Testovaná konfigurace počítače a systému:
CPU: Pentium-4/HT 3.4 GHz RAM: 2x512MB DDR443 HDD: SATA 7.200rpms, 8MB cache Lin: SUSE 9.1, kernel 2.6.8.1, ReiserFS Win: WinXP Pro SP2, NTFS
Testovací kód prováděl 10x za sebou celkem 100 SELECTů
:
function test($s){ $query=mysql_query( 'select id from `test` where `body` like ("%'.$s.'%")'); if ($row=mysql_fetch_object($query)) echo $s; } $iterationsCount = 10; $subIterationsCount = 100; for($i = 0; $i < $iterationsCount; $i++) { $timer->start(); for($j = 0; $j < $subIterationsCount; $j++) test(strval($j).' '); $test->add($timer->stop()); }
Výsledek SELECT
testu je v podstatě totožný jak INSERT
testu, MySQL na Linuxu má sice vyšší rozptyl výkonu, nicméně, je o desítky procent výkonnější než
na Windows. Pokud chcete tedy hostovat svoje PHP/MySQL řešení na Windows 2003 serveru, je dobré si to rozmyslet, a místo
koupě tohoto serveru, použít raději Linux. Je zdarma a je rychlejší.
Výsledky pro Windows:
Windows Average: 7.251727175712586 s Standard deviation: 0.009027196825484
Výsledky pro Linux:
SUSE Linux Average: 5.506822347640991 s Standard deviation: 0.018683764226855
I love my Papa, I love my Mama
Here you go, get that mp3 right now!
I’ve never been more popular in my life
Since I carry a big mat knife
I’m a little Taliban
I come from the country of Afganistan
If I’m gonna die in a big crash
It is the will of (allmighty) Allah
I didn’t have the money for the vacation
So I joined the terrorist organization
I learned to fly a plane from a friend
But he forgot to teach me to land
I love my Papa, I love my Mama,
But most of all I love Osama.
I love my Papa, I love my Mama,
But most of all I love Osama.
I am feeling the most happy
When I hear the scream (aaaaaa) of yuppie
I don’t care much where I’m going
Because I drive 707 Boeing
I make sure that USA will remember
The date of 11th of September
We choose this date because of this
Is the international day of peace
I love my Papa, I love my Mama,
But most of all I love Osama.
I love my Papa, I love my Mama,
But most of all I love Osama.
And I would be a real nice lot
If I wan’t into Jihad
For just becauce of this one attack
Americans want to bomb us back
I know that repercussions would come
And it’s a great commercial for Islam
It’s not much but now I can
See my house on CNN
I love my Papa, I love my Mama,
But most of all I love Osama.
I love my Papa, I love my Mama,
But most of all I love Osama.
…
Test GameBoy her na Symbianu 2/2
Včera jsem představil 20 GameBoy Color her pro Symbian telefony, a zde je dalších 18, co stojí za Vaši pozornost.
Mimochodem, GoBoy emulátor GameBoye umožňuje pro každou hru uložit neomezený počet jejich stavů, je to velice příjemná věc, pomocí “Save” hru uložíte, a pomocí “Load” ji začnete hrát přesně v tom stavu, kde jste skončili, aniž se musíte probojovávat přes různá menu a nastavení.
X-Men … WWF Betrayal
Test GameBoy her na Symbianu 1/2
Na základě včerejšího článku o GameBoy Color hrách na telefonech se Symbianem (Siemens SX1, Nokia 6600, a další), se mě asi deset lidí ptalo, na ICQ či emailu, co si mají stáhnout.
Tak jsem si v noci chvíli hrál, a přináším to, co mě zaujalo…
GameBoy Color hry jsou typicky zcela jiné, než jejich Java či Symbian ekvivalenty, jedná se často o strategie, RPG hry, či velice rozsáhlé plošinovky, které mají společné jedno - rozsáhlý příběh, a možnost strávit s hrou i desítky hodin času.
Bomberman … Beauty and the Beast
Nastavte si lépe phpMyAdmin
phpMyAdmin 2.6.0 je jedna z nejužitečnějších PHP aplikací, pod GNU GPL licencí. Umožňuje spravovat vaše MySQL servery, a provádět na nich prakticky veškeré myslitelné operace.
Nová verze 2.6.0 má přepracované rozhraní, podporuje nativně češtinu v UTF-8
(cs-utf-8
), odstraňuje řadu bugů, a má nové funkce. Jednou z tradičních
funkcí phpMyAdmina je i vytváření relací mezi tabulkami, jejich popis, historie
SQL příkazů, bookmarky a export do PDF. Tyto funkce jsou, nicméně, v základu
zakázány. Jak je aktivovat?
V phpMyAdminu spusťte skript /scripts/create_tables.sql
, vytvoří
se Vám 7 tabulek, v nové databázi nazvané phpmyadmin, kam se budou dané informace
ukládat. Následně je nutné modifikovat soubor config.inc.php
:
// nastaveni URL na phpMyAdmina $cfg['PmaAbsoluteUri'] = 'http://localhost/myadmin/'; // nastaveni hesla $cfg['Servers'][$i]['auth_type'] = 'config'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'xxxxxx'; // nastavení relací pro PMA $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark'; $cfg['Servers'][$i]['relation'] = 'pma_relation'; $cfg['Servers'][$i]['table_info'] = 'pma_table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma_column_info'; $cfg['Servers'][$i]['history'] = 'pma_history'; $cfg['Servers'][$i]['verbose_check'] = FALSE;
A můžeme doplnit i pár vizuálních úprav (odstranění loga), nastavení default jazyka a kódování, a zobrazování informací o běhu MySQL a PHP:
// persistent connections $cfg['PersistentConnections'] = TRUE; // nezobrazovat logo $cfg['LeftDisplayLogo'] = FALSE; // zobrazuj info o MySQL a PHP $cfg['ShowMysqlInfo'] = TRUE; $cfg['ShowMysqlVars'] = TRUE; $cfg['ShowPhpInfo'] = TRUE; // zobrazuj BLOBy $cfg['ShowBlob'] = TRUE; // default jazyk a charset $cfg['DefaultLang'] = 'cs-utf-8'; $cfg['DefaultCharset'] = 'utf-8';
MySQL “insert”: Windows nebo Linux?
V několika dalších článcích bych se chtěl zaměřit na srovnání rychlosti MySQL, PHP, Apache, PostgreSQL a Javy pod Windows XP SP2 a SuSE Linux 9.1.
V tomto prvním článku budu testovat rychlost MySQL, a to konkrétně insertů do tabulky, s fulltext klíčem.
Veškeré testy jsou prováděny na této konfiguraci počítače:
CPU: Pentium-4/HT 3.4 GHz RAM: 2x512MB DDR443 HDD: SATA 7.200rpms, 8MB cache Lin: SUSE 9.1, kernel 2.6.8.1, ReiserFS Win: WinXP Pro SP2, NTFS
Vlastní test provádí desetkrát po tisíci insertech do MySQL databáze, a potom zobrazí výsledky, pro měření je jako základ použit skript Jána Suchala.
Dokonalý operační systém za tři stovky
Před pár dny jsem si objednal SuSE Linux 9.1 FTP Edition. Není to nic jiného, než SuSE 9.1 Profesional, který se prodává za 2.800 Kč, akorát, že tato distribuce není přímo od SuSE, ale Tomáš Kupka těch 5GB stáhnul z FTP, poskládal to dohromady, nastavil české předvolené balíčky pro instalaci, a vypálil to na DVD. To celé prodává za 299 Kč, včetně DPH, což si myslím, že je hodně slušná cena, téměř výrobní náklady…
Můžete si samozřejmě SuSE 9.1 Personal (ISO obraz CD) kdykoliv stáhnout zdarma z internetu, a potom z FTP SuSE další balíčky, stovky a stovky MB, nicméně, proč s tím ztrácet čas? 5GB je hodně dat i na to nejrychlejší připojení, navíc takto získáte bootovací DVD, které můžete instalovat i tam, kde připojení k internetu je pomalé či žádné.
Tomáš Kupka to SuSE 9.1 DVD navíc poskládal dohromady dost rozumně, je tu:
- kancelářský balík OpenOffice 1.1.1, CZ,
- grafické prostředí KDE 3.2.1,
- počeštění KDE, Koffice, YaST,
- kernel 2.6.5-smp,
- Eclipse, Quanta, KDevelop, Gambas pro vývoj aplikací,
- gcc 3.3.3, a další nástroje pro kompilaci,
- desítka audio a video přehrávačů, včetně xmms, amaroK, Noatun, Xine,
- Apache 2, MySQL 4, PHP 4, PostgreSQL servery a databáze,
- velice kvalitní KMail, email klient, a KGpg pro šifrovanou komunikaci,
- Mozilla Suite a Firefox,
- licq, Kopette, Gaim a další,
- IRC a news klienti,
- Gimp 2.0 pro grafiku,
- Wine pro emulaci Windows.
Pokud chcete začít s Linuxem, nebo potřebujete komplexně vybavený operační systém, nebo chcete začít programovat v PHP, Perlu, Pythonu, Javě či C++, nebo pokud děláte webdesign, neexistuje zřejmě lepší volba.
Jediná zásadnější připomínka by byla jen na nepřítomnost KDE 3.3.0, nebyl by přece problém to DVD aktualizovat… Můžete to po instalaci ale samozřejmě udělat přes YaST.
Schizofrenní Siemens
Pokud si koupíte Siemens SX1, telefon se Symbianem, dostanete k němu na CD software nazvaný Siemens Data Suite. Z internetu si můžete stáhnout jeho poslední verzi, tedy SDS 1.1.56.1P. Trochu více jsem pátral na internetu, a zjistil jsem, že pro SX1 existuje, přímo od Siemense, i jiný balík aplikací, nazvaný Mobile Phone Manager.
Mobile Phone Manager je software určený pro nové telefony Siemens, jako je S65, CX65, a další, a s add-on funguje i pro telefon SX1.
Stáhnul jsem si tedy oba balíky, a začal porovnávat. Rychlý závěr? Mobile Phone Manager je lepší než SDS. Má pár funkcí navíc, a především je schopen spouštět automaticky mRouter, při startu libovolné Siemensovské aplikace, a automaticky se připojit k telefonu přes Bluetooth (IrDA, USB), a po ukončení aplikace ukončit i mRouter.
Což jsou poměrně zásadní výhody MPM, mRouter Vám nezabírá v paměti 40-50 MB, nespouští se při startu Windows, a nemusíte se starat ani o připojování telefonu (volba Připojit se k zařízení Bluetooth). Vše tedy funguje, jak by mělo. Plně automaticky.
Moc nechápu tuto schizofrenii Siemensu, mít dvě (téměř stejné, ale přesto v podstatných detailech rozdílné) aplikace pro SX1. Domnívám se, že Mobile Phone Manager je novější věc, a do budoucna prioritní. Používá se totiž nejen pro SX1, ale pro celou řadu nových Siemens telefonů.
Abych si tuto hypotézu potvrdil, poslal jsem Siemensu email. Uvidíme, co mi odpoví…
Mimochodem, vyzkoušel jsem s Microsoftími Bluetooth drivery rychlost Siemense SX1 na GPRS u T-Mobile, jako carrier již zmíněný Bluetooth, podle dsl.cz byla rychlost připojení 6.3 KB/s. Slušné.
Vtip je taky v tom, že tyto drivery používají pouze generický Windows XP SP2 profil Bluetooth modemu, a nepotřebují tedy žádnou instalaci SDS či MPM. To je docela dost dobré vědět, pokud potřebujete Bluetooth modem jinde. Postačí jen Windows XP SP2 a Váš Bluetooth dongle.