» Poradna » Web a internet

Rewrite rule a anchor

 |   |  Microsoft Windows 10 Chrome 68.0.3440.106

Zdravíčko, mám takový dotaz. Snažím se udělat hezké URL pomocí .htaccess, ale nějak bez úspěchu.Aktuálně mám hotovo:domena.cz/nejaka-stranka -> domena.cz/index.php?id=nejaka-strankaAle řeším, že některé odkazy používají anchor (hashtag jak chcete) a ty mi hezkou URL celkem kazí. Jak mám tedy udělat, abych z domena.cz/nejaka-stranka#neco dostal pouze domena.cz/nejaka-strankaZa nápady a reakce díky.

Odpovědi na otázku

 |   |  Microsoft Windows 7 Firefox 52.0

Nijak, tohle je v režii klienta a na server se vůbec neposílá.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | FreeBSD Firefox 57.0

Ahoj. Priznam se, ze presne nechapu, ceho se snazis dosahnout. Vzhledem k tomu, ze anchor se interpretuje az na strane klienta, tak je jasne, ze URL tak, jak ho vidi klient, ho musi obsahovat. Proto predpokladam, ze chces udelat redirect na nejakou stranku vcetne anchoru. Na to by ti mela stacit dokumentace, ktera u rewrite rule flagu NE (no escape) uvadi primo priklad s anchrorem. Viz http://httpd.apache.org/docs/current/en/rewrite/f...

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 68.0.3440.106

No, nevím, jak jinak to napsat, ale chci, aby v tom odkazu žádný hashtag/anchor nebyl. Takže někdo klikne na odkaz nejaka-stranka#neco. Serveru dorazí požadavek na stránku nejaka-stranka. Ten odešle tuto stránku a prohlížeč k tomu přidá #neco. A já hledám nějaký způsob (třeba redirect, JS nebo cokoliv ), aby i prohlížeč zobrazil nejaka-stranka a ignoroval hashtag/anchor.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | FreeBSD Firefox 57.0

No tak sis asi odpovedel. Server nevi, jestli klient bude do url hash pridavat, nebo ne. Jemu to dorazi bez nej, takze ani nemuze vedet, jestli ma nejaky redirect delat, nebo ne.Tim mi z toho zbyva, ze to co chces, se musi udelat javascriptem.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 IE 11.0

No mě z toho vyplývá, že na té stránce by ten hash neměl nikde být a pak se ani nemůže objevit v url

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | FreeBSD Firefox 57.0

Ano, ale porad mu tam muzou chodit lidi odjinud a to jako napotvoru, rovnou s tim prokletym hashem.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 61.0

Pokud nechcete aby v adrese byl hash, tak generujte všechny odkazy bez něj a je to vyřešené, nad tím máte přeci kompletní kontrolu. A pokud si k tomu někdo přidá hash schválně, tak jaký je důvod takovou situaci nějak řešit?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | Microsoft Windows 7 Firefox 61.0

Chápu to tak, že klient pošle serveru url "neco.cz/jedna-dve#anchor" a ty chceš, aby server vrátil klientovi "neco.cz/jedna-dve" a nějakému JS předal hodnotu "anchor"?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | FreeBSD Firefox 57.0

Prave ta predstava, ze klient posle serveru "neco.cz/jedna-dve#anchor" je IMHO spatne. Clovek sice klikne na "neco.cz/jedna-dve#anchor", ale uz browser posle serveru request jen na "neco.cz/jedna-dve", takze server o nejakem "#anchor" vubec nevi. Proto tady nasledne vyplaval ten javascirpt, jako asi jedine misto, kde se s tim da nasledne neco delat.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 68.0.3440.106

Přesně tak. Nemá tedy někdo nějaký ten JS v kapse schovaný nebo aspoň nějaké vodítko?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 61.0

we wordpresu jde tohle udělat v nastavení ale je potřeba url rewraiter modul v IIS

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Anchor, Hashtag