Vícejazyčný web a přepis URL adresy

Pavel Horáček
21. úno 2015 21:00 - 22. úno 2015 10:15 #120326
Dobrý den,
používám u webů přepis url adresy (tak, aby v adrese stránky nebyl soubor "index.php", ale jen čistá url adresa). Teď jsem, ale narazil na problém, že u vícejazyčného webu to nefunguje. V administraci joomly mám zapnuto "použít přepis URL" a v rootu webu soubor ".htaccess", který je v administraci webhostingu také povolený. Takhle to funguje na "normálních" webech, ale na vícejazyčném mně to neběží (chyba 404-objekt nenalezen). Chci se tedy zeptat, zda je potřeba nějak upravit soubor ".htaccess" nebo je problém ještě někde jinde?

Joomla 3.3.6...vícejazyčný web vytvořen bez použití jiných rozšíření třetích stran
Web je ve tvaru:
www.mojedomena.cz/index.php/cs/...index.php/en/...index.php/de/ ....
právě toho index.php bych se rád zbavil.
Výpis souboru ".htaccess":
# mod_rewrite in use
RewriteEngine On
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
RewriteRule (.*) index.php

Předem děkuji za odpověď.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Pavel Horáček
21. úno 2015 21:16 #120327
rozpracovaný web je zde: smartfluids.www4u.cz/

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
22. úno 2015 09:49 - 22. úno 2015 10:21 #120331
V Globální nastavení - záložka Veřejná část nastavit Nastavení SEO na:

Přátelské URL Ano
Použít přepis URL Ano
Přidat k URL příponu Ne

a hlavně musíte přejmenovat stávající htaccess.txt v rootu vaší Joomly na .htaccess
mít .htaccess hostingem povolen a nastavit jej podle vašeho hostingu (ve vašem případě savana )

Nejčastěji je problém v povolení nebo zakázání:

Options +FollowSymLinks
RewriteBase /


a špatném nastavení:

RewriteBase /


Pokud používáte vlastní .htaccess nemusí vám vše fungovat správně a to ani zabezpečení Joomly. Používejte .htaccess vždy z poslední verze vaší Joomly.

Poznámka: nastavovat funkční SEF URL při vytváření webu je ta největší blbost jako můžete udělat. Zpravidla to přináší jen další problémy...

I'm sorry, my responses are limited...you must ask the right questions.
Poděkovali: Bart

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Pavel Horáček
22. úno 2015 10:25 #120332
Děkuji za odpověď,
já všechno tohle mám nastavené správně...jak jsem psal u dalších webů to běží bez problémů, ale u tohoto vícejazyčného to neběží. Tak jsem myslel, zda není problém právě v těch jazycích, že je tam navíc /cs/, /de/...
Chci tam mít čisté URL adresy kvůli SEO, proč by to měla být blbost?... horší zabezpečení webu?
Děkuji.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
22. úno 2015 11:02 - 22. úno 2015 11:05 #120333
Objevující se index.php značí, že .htaccess nefunguje, nebo nemáte nastaveno Použít přepis URL Ano.
Když nepoužijete výchozí .htaccess (případně upravený dle hostingu), tak vám taky SEF URL nemusí fungovat.
cs/ de/,... se vám tam objevovat bude. Chceteli super duper SEF URL podle vašich představ, použijte rozšíření pro SEF URL.

Když stránky vytváříte nezapínejte SEF URL, způsobuje to problémy a pak tu lidi brečí, že: "mě to nefunguje", "mám 404". Nejvíce brekotu je při stavbě stránek a spuštěném rozšíření pro SEF URL třetí strany...
Pokud chcete konkrétnější radu k vašim stránkám, je třeba poskytnout odkaz na stránky, nebo alespoň napsat základní informace: verze Joomly, hosting, jeho technické parametry (hlavně jestli jedete na apache nebo Win),...

I'm sorry, my responses are limited...you must ask the right questions.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Pavel Horáček
22. úno 2015 14:42 #120334
SEF URL zapínám vždy až na konci...i teď už chybí jen texty u jazyk. verzí. A právě proto, že to neběží, tak mám přepis URL vypnutý, .htaccess je výchozí.
Zde jsou ještě jednou informace o webu:
smartfluids.www4u.cz/
webhosting: SAVANA ... mám zde více webů a všechny SEF URL bez problému, např: www.evadoplnky.cz
Joomla 3.3.6
...vícejazyčný web (vytvořen bez použití jiných rozšíření třetích stran) ... to si myslím, že je problém proč to neběží, protože bez vícejazyčných verzí, SEF URL běží...to, že se tam objevuje cs/ de/,... mi vůbec nevadí, naopak to tak chci. Nechci "index.php"
Takže moje otázka zní: Může to, že jsem nastavil web jako vícejazyčný, způsobit to, že neběží "přepis URL" (SEF URL) a pokud ano, tak zda nevíte jak to opravit resp. proč tomu tak je?
Děkuji

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
22. úno 2015 15:36 #120335
Nezapínáte až na konci. Už teď máte zapnuto. A zapnuto bylo i při vytváření evadoplnky.cz, protože například na stránce evadoplnky.cz/nabidka/papirove-pleteni (a také na jiných) odkazujete dole na:

evadoplnky.cz/index.php/fotogalerie
evadoplnky.cz/index.php/kontakt

index.php se tam tedy vyskytuje a jediná možnost jak jste to tam dostal je právě při zapnutém SEF URL a nesprávném vkládání odkazů do obsahu článků (tedy zkopírování z adresního řádku).

Přesto odkaz s index.php funguje což při zapnutém a nastaveném SEF URL Joomly nefunguje, normálně to skončí chybou 404. S index.php se vám generují i URL na doméně www4u.cz. Něco máte divně...

Takže znova:

Máte nastaveno jak popisuji výše? Pro danou instalaci Joomly na subdoméně? Je povoleno používat .htaccess na subdoméně? Používáte originální .htaccess z Joomly?

Pozn. komunikujte ve fóru pod jednou identitou

I'm sorry, my responses are limited...you must ask the right questions.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Pavel Horáček
22. úno 2015 18:12 #120357
Vždy až na konci zapínám "použít přepis URL" a aktivuji .htaccess, možnost "přátelské URL" je už po instalaci joomly nastavena na ANO, takže to nechávám. V tom jsme si tedy nerozuměli, chyba je na mé straně.
Já se totiž od začátku bavím jen o tom, že chci z URL dostat pryč "index.php". Zřejmě tedy postupuji špatně. Nevím ani jak jinak bych tam třeba ty odkazy dostal než zkopírováním z adresního řádku.
Nicméně nastaveno to mám i pro subdoménu. Mám tam originál .htaccess z Joomly. Nevím, zda musí být pro savanu nějak upraven, protože předtím mi to fungovalo na ostatních webech.
Přátelské URL Ano
Použít přepis URL Ano
Přidat k URL příponu Ne
...web smartfluids.www4u.cz/ teď tedy hází chybu 404

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
22. úno 2015 18:37 - 22. úno 2015 18:42 #120358
Při instalaci čisté Joomly by měla být volba Přátelské URL nastavena na NE. Chyba 404 ukazuje na špatně nastavený nebo neexistující .htaccess v rootu Joomly se kterou pracujete.

Zkuste si pohrát s nastavením: RewriteBase /
Tento řádek odkomentujte (smažte # ], nebo zakomentujte, případně upravte cestu

index.php vám zmizí pokud máte Přátelské URL Ano, Použít přepis URL Ano a funkční .htaccess.

Odkazy v obsahu se vytvářejí pomocí tlačítka Vložit odkaz a to lépe v jiném editoru, třeba JCE, kde si odkaz můžete naklikat. Ve výchozím TinyMCE je to opravdu o kopírování, ale musíte mít vypnuté Přátelské URL.

Pokud odkaz vkládáte kopírováním je třeba vkládat odkaz ve tvaru např.: index.php?option=com_content&view=article&id=3&Itemid=137, tedy odkaz v základním tvaru bez domény na začátku.

I'm sorry, my responses are limited...you must ask the right questions.
Poděkovali: Pavel Horáček

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Pavel Horáček
22. úno 2015 20:24 #120368
Tak nakonec byl celý problém na straně webhosting, kde sice soubor .htaccess byl nahrán, ale změny se z nějakého důvodu na serveru neprojevily:-(....takže po tel. konzultaci už to běží.
Děkuji tedy za informace a váš čas.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.