Byla vydána nová verze 7.0 open source komunikační platformy Mattermost (Wikipedie). Podrobnosti v dokumentaci. Zdrojové kódy jsou k dispozici na GitHubu.
Adventura VirtuaVerse je na portále GOG.com zdarma, akce trvá do 27. června.
Amazon představil našeptávač kódu Amazon CodeWhisperer. Jedná se o alternativu k GitHub Copilot.
Byla vydána verze 12.0.0 nástroje pro vytváření a úpravu snímků obrazovky Flameshot (GitHub) postaveného nad frameworkem Qt. Přehled novinek i s náhledy v poznámkách k vydání Instalovat lze také ze Snapcraftu a Flathubu.
Vyhledávač Brave Search slaví první rok své existence a představuje Goggles. Za rok bylo zodpovězeno 2,5 miliardy dotazů. Nové Goggles umožňují vytvářet a sdílet vlastní sady pravidel a filtrů pro výsledky vyhledávání.
Twitter testuje Poznámky (Notes). Tweet může mít 280 znaků, původně jenom 140. Poznámka může mít až 2 500 slov.
Byl vydán Zoom Client pro Linux 5.11.0 (3540). Mimo jiné řeší sdílení obrazovky na Waylandu. Nejnovější Zoom Client by se měl brzy objevit také na Flathubu (GitHub).
Příspěvek na blogu GitHubu informuje, že před rokem představený GitHub Copilot je již přístupný všem. Za 10 dolarů měsíčně nebo 100 dolarů ročně. Pro ověřené studenty a správce populárních open source projektů zdarma.
Společnost Espressif Systems oficiálně představila ESP32-C5. Nový člen rodiny SoC ESP32 má 32bitové RISC-V jádro a podporuje dual-band Wi-Fi 6 a Bluetooth 5 (LE).
Google Chrome 103 byl prohlášen za stabilní. Nejnovější stabilní verze 103.0.5060.53 přináší řadu oprav a vylepšení (YouTube). Opraveno bylo 14 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).
https://www.xxx.zzz/AAA/BBB/C.txtMuze byt soubor C.txt klidne ulozeny v adresari /www/data/ a nemusis vytvaret /AAA/BBB/. Format URI je ciste tvoje vec a muze tam byt cokoli. Pokud chces jedinecne URL. Ukladej si do tabaze nejaky vygenerovany "hash" na ktery budes odkazovat:
id | soubor | hash 0 | C.txt | 79054025255fb1a26e4bc422aef54eb4Vsechny soboury muzes ukladat na jedno misto, treba /www/data/ a soubor se ulozi jako '79054025255fb1a26e4bc422aef54eb4'. Kyz zadas:
https://www.xxx.zzz/79054025255fb1a26e4bc422aef54eb4Retezec se porovna z databazi a vrati /www/data/79054025255fb1a26e4bc422aef54eb4 jako C.txt a dalsi 1000 a jedna moznsti.
Ale nextcloud mi neresi automatické vytvareni tech adresaru podle ID. Vyhodou by mozna bylo ze to muze hned nasdilet.
id | soubor | path | hash 0 | C.txt | 79/05/40/25255fb1a26e4bc422aef54eb4 | 79054025255fb1a26e4bc422aef54eb4alebo
id | soubor | path | hash 0 | C.txt | 790/540/25255fb1a26e4bc422aef54eb4 | 79054025255fb1a26e4bc422aef54eb4
Teoreticky to jde, můžeš napsat v PostgreSQL funkci, která zavolá systémový příkaz mkdir
(nebo spíš sudo ... mkdir ...
), a tuhle funkci volat z triggeru/pravidla při vkládání záznamu do tabulky.
Ale nepřijde mi to jako dobrý nápad a nemyslím si, že by to vůbec bylo potřeba. Ten program (PHP?), který bude vytvářet soubor přece musí vědět, v jaké složce ho vytváří - tudíž si tu složku může vytvořit sám před vytvořením souboru. Tím pádem to nemusíš složitě řešit v PostgreSQL (je to trochu bezpečnostní riziko, zbytečná komplikace, DB ti běží pod jiným uživatelem...).
Další věc je, že adresářová struktura na disku vůbec nemusí odpovídat struktuře URL. Požadovaný soubor můžeš poslat buď z PHP skriptu nebo pokud máš aplikační server, tak stačí nastavit HTTP hlavičku X-Accel-Redirect
nebo X-SENDFILE
a tím říct HTTP serveru, který soubor má poslat – data pak netečou přes aplikační server, nezatěžují ho a servíruje je přímo Apache nebo Nginx z disku.
V te aplikaci mohu jako dalsi atribut prvku pouzit url adresu, ktera bude obsahovat to ID. Kliknutim na toto url spustim php script, ktery zkontroluje zda adresar existuje a pokud ne tak ho vytvori. Pouzije na to to ID z url.
Tam jen pozor na to, že uživatel (potenciálně útočník) si může ten URL parametr přepsat a poslat tam, co chce. Takže bych to udělal nějak takhle:
Tiskni
Sdílej: