Manual:Short URL/cs

Tento článek je o struktuře URL. Informace o vytváření krátkých adres URL pro články naleznete v části Rozšíření:ShortUrl . Pro vytvoření služby zkracování URL viz Extension:UrlShortener .

Krátké URL adresy nebo Přepisy URL adres skrývají přípony souborů PHP z adresy stránky. Než začnete, věnujte prosím několik minut vytvoření stabilní struktury URL adres pro váš web, abyste předešli problémům v budoucnu.

Úvod

Cíl

Výchozí instalační cesta MediaWiki vypadá takto:

/var/www/html/mediawiki (nainstalováno jako uživatel root)
/home/johndoe/public_html/mediawiki (nainstalováno u poskytovatele sdíleného hostingu)

Výchozí adresy stránek MediaWiki vypadají takto:

https://example.org/w/index.php/Page_title (novější verze MediaWiki bez podpory CGI (Common Gateway Interface))
https://example.org/w/index.php?title=Page_title (novější verze MediaWiki s podporou CGI)

Pomocí metod popsaných na této stránce můžeme nakonfigurovat něco podobného:

https://example.org/wiki/Page_title Toto je nejběžnější konfigurace, stejná jako na Wikipedii, i když ne výchozí, protože vyžaduje úpravy na straně serveru.
https://example.org/view/Page_title
https://wiki.example.org/view/Page_title
https://example.org/Page_title
https://wiki.example.org/Page_title

Někteří lidé nedoporučují poslední dvě konfigurace. Potenciální problémy a řešení viz Příručka:Wiki v kořenovém adresáři webu.

Výhody a nevýhody

  • Výhoda: Krátké URL adresy skrývají některé technické detaily před koncovými uživateli, což může být pro majitele webů žádoucí. Mimo jiné to znamená, že mohou zůstat stabilní i při změně základního softwaru. (Rozdíl mezi výchozí strukturou URL adres MediaWiki s povoleným CGI a bez něj viz výše.) Jsou také pro návštěvníky snáze čitelné, zapamatovatelné a manipulovatelné. Krátké URL adresy navíc nabízejí oproti výchozím URL adresám výhodu pro optimalizaci pro vyhledávače, protože URL adresy obsahující ? mohou být vyhledávači při výpočtu Page Rank považovány za méně příznivé.
  • Nevýhoda: Vyžaduje konfiguraci, takže v závislosti na používaném hostingovém prostředí může být obtížné jej znovu vytvořit. Nicméně, protože každý široce používaný webový server lze nakonfigurovat pro používání krátkých URL adres, většina placených webhostingových služeb by tuto funkci měla podporovat. Žádný hosting, který vám tuto funkci nenabízí, nestojí za vaše peníze.


Průvodci

Naši oficiální průvodci konfigurací krátkých URL adres pro různé webové servery. Vyberte konfiguraci vašeho webového serveru z tohoto seznamu. Pokud nevíte, jaký serverový software používáte, pak se s největší pravděpodobností jedná o Apache.

Další mininávody s návody

Tyto návody jsou staré a jsou s téměř výhradně špatnými radami. Tyto budou nakonec jeden po druhém smazány, protože naše výše uvedené oficiální návody jsou vytvořeny pro různé webové servery.

Kdokoli může vytvořit stránku s návodem k řešení a uvést ji níže. Použijte prosím pro stránku rozumný název, který odpovídá níže uvedeným názvům. Pokud má každé unikátní řešení svou vlastní stránku, čtenáři se mohou vyhnout složitosti, kterou nechtějí. Udržujte to jednoduché, čitelné, krátké a pro každé řešení vyhraďte samostatnou stránku.

Abychom pomohli ostatním zjistit, které metody krátkých URL skutečně fungují, po vyzkoušení každé metody upravte stránku a zvyšte počet "fungovalo" (worked) nebo "nefungovalo" (didn't_work) u daného průvodce a kliknutím na odkaz ve svém čísle stručně (nebo podrobně, dle vaší volby) popíšete, co se pokazilo.

URL jako - example.com/wiki/Název_stránky

Akce jako úprava, zobrazení historie atd. budou stále obsahovat index.php, pokud není definován $wgActionPaths .

Přístup Root

Tyto metody vyžadují přístup ke konfiguraci serveru. Pokud jste na sdíleném hostingu, s největší pravděpodobností ne. V tomto případě budete muset použít metodu, která nevyžaduje přístup "no root access" (bez root oprávnění). Můžete přejít přímo k nástroji MediaWiki ShortURL Builder a postupovat podle pokynů na obrazovce. Po zadání adresy URL vaší wiki vyberte možnost "I don't have root access"(nemám root přístup).

(pokyny k Apache naleznete v sekci Průvodci).

URL jako - example.com/Název_stránky

Někteří lidé tuto konfiguraci nedoporučují. Potenciální problémy a řešení viz Příručka:Wiki v kořenovém adresáři webu .

Jak vytvořit URL adresy example.com/Název_stránky:

URL jako - wiki.example.com/Název_stránky

Někteří lidé tuto konfiguraci nedoporučují. Potenciální problémy a řešení viz Příručka:Wiki v kořenovém adresáři webu .

Jak vytvořit URL adresy wiki.example.com/Název_stránky:


Řešení problémů

Problém s ampersandem (aliasem) (&)

Problém s ampersandem se objevuje, když máte v názvech stránek symboly (jako &, ?, #, + a /), které i přes správné kódování v odkazu nejsou správně předávány z mod_rewrite do skriptu. To se projevuje chybou 404 page-not-found errors (stránka nenalezena), protože název se u speciálního znaku ořízne. Například kliknutí na odkaz "Stránka Johna a Marie" dostane chybu 404, protože MediaWiki hledá stránku s názvem "John".

Je to proto, že ampersandy v dlouhých názvech jsou považovány za oddělovače řetězec dotazu a nikdy by se nedostaly do běhového prostředí PHP běhového prostředí. Toto je způsobeno starou a problematickou chybou mod_rewrite.[1][2]

Řešení:

Tento problém je způsoben částí ?title=?title=$1 v pravidlech pro přepisování, jako je /index.php?title=?title=$1, která je zcela zbytečná a škodlivá. MediaWiki analyzuje cesty přímo z REQUEST_URI, takže vše přepište do /index.php.


Vymazávání mezipaměti

Pokud si všimnete, že vaše změny v $wgArticlePath v LocalSettings.php se neprojevují v example.com/wiki/Main_Page, může to být způsobeno ukládáním odkazů do mezipaměti MediaWiki podle předchozího nastavení.

Přejděte na example.com/wiki/Main_Page?action=purge, chcete-li donutit MediaWiki regenerovat odkazy z mezipaměti.

Také můžete:

  1. Spustit dotaz MySQL "TRUNCATE objectcache;" nebo
  2. Ujistěte se, že je aktualizována $wgCacheEpoch (pokud je povolena $wgInvalidateCacheOnLocalSettingsChange , stačí upravit LocalSettings.php, abyste ji vymazali)

Přesměrujte návštěvníka vaší domény na vaši wiki

Naše oficiální průvodce konfigurací krátkých URL adres obsahují doporučení, jak pomocí konfigurace krátkých URL adres nasměrovat kořen vašeho webu na vaši wiki.

Například náš průvodce Apache doporučuje použít toto k nasměrování kořenového adresáře vašeho webu na vaši wiki:

RewriteRule ^/*$ %{DOCUMENT_ROOT}/w/index.php [L]

Upozorňujeme, že nedoporučujeme provádět přesměrování HTTP přímo na vaši wiki cestu nebo hlavní stránku. Protože přesměrování přímo na hlavní stránku napevno naprogramuje variabilní části nastavení stránky vaší wiki do konfigurace serveru. A přesměrování na cestu wiki bude mít za následek dvě přesměrování. Jednoduše přepište kořenovou cestu k MediaWiki a ta se sama postará o přesměrování 301 na hlavní stránku.

Pokud používáte VirtualHosts, umístěte pravidla přepisování do deklarace virtuálního hostitele!

Přesun wiki z /wiki do /w

Častou chybou začátečníků je instalace samotné MediaWiki (zdrojového kódu, nikoli krátké URL adresy) do /wiki místo /w. Po instalaci by si uvědomili chybu při pokusu o konfiguraci krátkých URL (což by se stalo obtížným, protože virtuální cesta by pak kolidovala se skutečnou cestou).

Existuje obecný návod na přesun wiki, ale to je příliš složité, pokud stačí změnit instalační adresář (a zůstat na stejném serveru, stejné databázi a stejném názvu hostitele).

Zde je to, co musíte udělat:

  • Zálohujte soubor LocalSettings.php a všechny další konfigurační soubory, které jste případně vytvořili (například soubor .htaccess).
  • Přejmenujte instalační adresář MediaWiki na vašem serveru z /wiki na /w.
  • Nastavte proměnnou $wgScriptPath v LocalSettings.php na "/w" a odeberte (nebo zakomentujte) jakoukoli definici proměnné $wgArticlePath (tato proměnná bude znovu změněna při dalším nastavování krátkých URL adres)
  • V tomto okamžiku by vaše wiki měla normálně fungovat na adrese example.org/w
  • Nyní si projděte běžného průvodce, kde nastavíte krátké URL adresy
  • Proveďte na své wiki několik testů, abyste se ujistili, že nic není poškozené. Upravte stránku, navštivte několik různých stránek atd. Pokud se něco jeví jako neobvyklé, vraťte změny zpět obnovením zálohy složky LocalSettings.php a dalších relevantních souborů, které jste mohli změnit během konfigurace krátkých URL adres, a přejmenujte složku zpět na /wiki.

Poznámka pro uživatele sdíleného hostingu: Mnoho sdílených hostingových plánů nabízí správce aplikací pro automatickou instalaci, aktualizaci a zálohování aplikací, jako je MediaWiki. Pokud váš plán tuto funkci nabízí a chcete ji nadále používat, měli byste kontaktovat technickou podporu a sdělit jim, že jste právě ručně změnili instalační adresář MediaWiki.


Triky


Související odkazy

Externí odkazy

Poznámky pod čarou

  1. Bugzilla mod_rewrite for ampersand bug, která byla u některých uživatelů částečně vyřešena, ale až po 13 letech
  2. Bugzilla mod_rewrite for ampersand bug, partially resolved for some users, but only after 13 years
Category:Configure/cs#Short%20URL/cs Category:Wiki page URLs/cs#Short%20URL/cs
Category:Configure/cs Category:Wiki page URLs/cs