
Nenačítání odkazů v eshopu po migraci na jiný webhosting
Po nedobrovolné migraci webhostingu, protože dosavadní provozovatel Savana ukončil svou činnost a automatickém překlopení na nový hosting od Webglobe mi eshop přestal správně načítat stránky.
Pokud má odkaz v eshopu tvar "https://domena.eu/eshop/index.php/nazev-produktu", tak eshop načte automaticky vždy pouze úvodní stránku, jako by ta stránka pro něj neexistovala, což na původním webhostingu samozřejmě nedělalo a fungovalo vše zcela bez problému, čili standardně. Nicméně pokud dojdu na produkt přes menu v eshopu, tak se nyní záhadně zobrazí v adrese parametr "?uri=" a s tímto parametrem v adresním řádku prohlížeče to pak načítá stránky s produkty správně, čili "https://domena.eu/eshop/index.php?uri=/nazev-produktu".
Nechápu, proč tomu tak je a proč to přidává parametr "?uri=" do adresy, aby ty stránky eshop načítal a neházel to zpátky na úvodní stránku eshopu. Automatický přenos na nový hosting dělal nový provozovatel Webglobe, který předešlý webhosting pohltil a tím začal tento problém. Jejich technická podpora absolutně nereaguje a netuším, kde hledat problém. Jejich administrace webhostingu je doslova zoufalost s minimem nastavení a příšernou dobou odezvy pro načítání operací, prostě strašný. Původně jsem si myslel, že to snad dělá přesměrovávání z http na https, ale pokud jsem toto deaktivoval problém nadále přetrvává, takže tím to není. Netuší někdo na co se tady zaměřit?
Zvažuji po novém roce kvůli téhle nepodpoře na Webglobe a příšerné administraci i změnu provozovatele webhostingu, kde bude fungovat podpora helpdesku, zvládne externí přístup k php databázím a alias, což jsem zjistil, že ani dnes není u provozovatelů webhostingu žádným pravidlem. Máte někdo nějaký tip na dobrý hosting za rozumnou cenu? Wedos bych vynechal, protože z dřívější doby mám zkušenosti, že umí akorát dobře posílat odkazy na jejich znalostní databázi, i když to problém neřeší.
Překopíroval jsi na nový hosting soubor .htaccess?
https://www.webglobe.cz/poradna/co-je-redirect-htaccess
Ahoj hoste, jasan, to bylo první, co jsem kontroloval a také jeho obsah, čili nic v něm nechybí, vůči původnímu na předešlém hostingu. Jinak já nic kopírovat ani nemusel, vše dělal Webglobe sám v nějakém automatickém režimu a dostal jsem pouze info o zahájení a ukončení přenosu na nový hosting.
Zkontroluj ten htaccess. Mel by obsahovat pravidla pro presmerovani adres. Treba tam zustalo neco puvodniho spatne.
To, ze probehne nejaky automaticky prevod neznamena, ze vse probehne korektne
Raději to ještě upřesním. Adresář s eshopem obsahuje ještě od dob jeho instalace soubor ht.htaccess, který jsem nikdy nepotřeboval upravovat, čili je původní, viz:
Pak, když jsem před časem potřeboval přejít na free SSL certifikát, čili na https, tak jsem musel podle tohoto návodu https://www.savana.cz/napoveda/domeny-a-subdomeny/smerovani-domeny/presmerovani-domeny-na-https pouze vytvořit nový soubor .htaccess, viz:
a ten vložit do kořenového adresáře domény, kde mám eshop, protože tam mám ještě i webovky. Vše fungovalo perfektně a nyní na Webglobe už ne, takže netuším, jaký parametr upravit, aby to chodilo, pokud je to tím souborem .htaccess.
Máš zakomentované tohle:
Sice mi to dnes už moc nemyslí, ale mělo by to být to pravidlo, které ti odstraňuje z parametrů právě to ?uri
edit: jak vypadal původní .htaccess? Ono bez znalosti konkrétních (a původních) nastavení se dá jen hádat.
Co jsem sem dával ten delší kód ze souboru ht.htaccess, který je přímo v kořenovém adresáři eshopu a vytvořil se automaticky při instalaci eshopu, tak v něm je vše původní, čili bez jakýchkoliv změn. Mám totiž i zálohy a pokud jej porovnám, tak žádné změny v něm po migraci na nový hosting nejsou.
Nicméně, pokud v něm odkomentuji, co jsi uvedl, tak se mi ani nenačte eshop, ale pouze webovky, které jsou v kořenovém adresáři.
https://craftgen.eu/eshop/ht.htaccess
200 OK
https://craftgen.eu/eshop/.htaccess
403 Forbidden
A ještě poznámka: nginx
U druhého odkazu bude .htaccess určitě 403 forbiden, když je kvůli webovkám o úroveň výše, čili v kořenovém adresáři domény. Nicméně teď koukám, že to hází stejnou chybu, i když je odkaz o úroveň výše, ale přitom přesměrovávání všech domén na https s ním funguje a bez něj nikoliv. To mě hlava nebere. Co to je ten nginx?
nginx je webový server.
Původně ti to jelo na apache a teď ti to jede na nginx, u kterého je ta konfigurace pravděpodobně jiná.
A ten "Super QC 1.4.2; (c) 2010-2011 Netkick s.r.o." myslíš, že je to dobrý nápad?
Aha, to mě nenapadlo, že to bude problém. Takže to bude chtít zřejmě úpravu souboru .htaccess, který stále hází chybu 403 a má sloužit primárně pro přesměrování z http na https. Nebo je to hlubší problém a ten eshop na tom nginx prostě nepojede korektně a budu muset najít hosting, který běží na apache?
v první řadě nginx je úplně jiné zvíře než apache2. Defaultně (bez pluginu) nic jako htaccess vůbec nezná. Jseš si jistý, že se nginx nepoužívá jen jako reverzní proxy?
edit: tak asi jo: https://www.webglobe.cz/poradna/co-je-nginx
Třeba podle tohoto:
https://www.webglobe.cz/poradna/srovnani-webhostingu
https://www.webglobe.cz/webhosting/sdileny
bych řekl, že Webglobe webhosting může jet na Apache, Nginx nebo OpenLiteSpeed webovém serveru.
Popisují v poradně všechny tři a i tam mají co je na co lepší.
https://www.webglobe.cz/poradna/co-je-apache
https://www.webglobe.cz/poradna/co-je-nginx
https://www.webglobe.cz/poradna/co-je-openlitespeed
Jako teoreticky to může mít i s reverzní proxy na nginx.
Informace má, jako ono to zas takový problém přece být nemůže zjistit jakou technickou konfiguraci má ten jeho webhosting, jestli mu to jede na nginx nebo apache a jak pořešit funkcionalitu co mu prováděl htaccess.
Jako jestli plave tady v tom tak být jím tak si najdu jiný koníček než se starat o webovky