Diskuze: Laravel routing
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 10 zpráv z 10.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
nechápem ako je pre toto podstatné ako vyzerá tvoja DB 
podľa typu výnimky je jasné, že nedokázalo spárovať URL. Skúsil by som odstrániť to lomítko na začiatku, a skontroloval či metóda index berie nejaký parameter (toto je len taký nástrel). Z tých informácií čo si dal neviem inak určiť príčinu tej výnimky.
Zadny z těchto argumentu by tuto chybu nezpusobyl. Pri registrovani jakekoli routy se z url odstranuje lomitko na zacatku i na konci funkci trim. Tuto exception vyhazuje routecollection pokud nenajde routu, ktera by odpovidala requestu (musi se shodovat host, metoda, url a protokol). Radsi at posle zbytek scriptu s definici rout, treba ma definovanou skupinu s prefixem a jen si nevsiml
tiež som si myslel, ale nechcelo sa mi to overovať tak som skúsil
lebo aj keď má otázka 20 či
koľko riadkov tak 15 je úplne nepodstatných a z tých posledných 5 sa
bohviečo nedá zistiť
Tak som to napokon vyriešil... zistil som, že nieže nefunguje tento route, ktorý som tu dal, ale nefungoval vlastne žiaden route okrem "/". Ak som tam vložil index.php (mojprojekt.sk/public/index.php/page/kakanec) tak mi to všetko šlo tak, ako som potreboval.
Problém bol v htaccess... 
Pokud mas vice htaccessu po ceste od DirectoryRoot, ktere uplatnuji RedirectRule, tak je problem. Htaccess nemeni puvodni REQUEST_URI, ale do $_SERVER pridava REDIRECT_URL, s kterou Laravel (ani Symfony, protoze trida Request je jen nadstavba) nepocita a nebere v potaz. ! htaccess v publicu vubec nevadi, vadi htaccessy nad tim !. Pokud vyvijis na localu, resenim je virtualhost v apachi (pokud jedes na nem), na hostingu se to resi hure. Jedna varianta je v indexu prepsat pred volanim Request::capture() prepsat $_SERVER['REQUEST_URI'] prave na $_SERVER['REDIRECT_URL'], nebo domena tretiho radu, pokud ti to umoznuji.
Pokud mas vice htaccessu po ceste od DirectoryRoot, ktere uplatnuji RedirectRule, tak je problem. Htaccess nemeni puvodni REQUEST_URI, ale do $_SERVER pridava REDIRECT_URL, s kterou Laravel (ani Symfony, protoze trida Request je jen nadstavba) nepocita a nebere v potaz. ! htaccess v publicu vubec nevadi, vadi htaccessy nad tim !. Pokud vyvijis na localu, resenim je virtualhost v apachi (pokud jedes na nem), na hostingu se to resi hure. Jedna varianta je v indexu prepsat pred volanim Request::capture() prepsat $_SERVER['REQUEST_URI'] prave na $_SERVER['REDIRECT_URL'], nebo domena tretiho radu, pokud ti to umoznuji.
Toto je samozrejme problem pouze, pokud request volas ne s uplnou cestou od rootu. Pokud to zadas celou cestou, tak neni problem, protoze vse je soucasti Request_URI a pri procesu zjistovani relativni cesty (te, kterou opravdu zadas) se to uz spravne vyresi. On to dela tak, ze mas SCRIPT_NAME, coz je url cesta ke sriptu, ktery se spustil a hleda schodu mezi ni a REQUEST_URI. Takze pokud REQUST_URI nema stejny zaklad jako SCRIPT_NAME, tak se to spravne nenapasuje.
nebol skôr problém v tom, že laravel defaulte požaduje URL vo formáte domena.com/public/cokolvek? Proste to public tam treba stále dávať, je to kvôli bezpečnosti (aj keď samozrejme dá sa mať url aj bez public)
Robím v Laraveli nejaký ten rok, ťažko povedať čo sa považuje za to byť odborník. Čiže môžeš napísať mne do správy akurát si myslím, že práve na to je fórum, aby ti vedeli odpovedať viacerí resp. prípadne aby tie otázky pomohli aj niekomu inému.
Zobrazeno 10 zpráv z 10.