Google v pátek spustil v Česku Vyhledávání Live. Tato novinka umožňuje lidem vést plynulou konverzaci s vyhledávačem v češtině. A to prostřednictvím hlasu, nebo prostřednictvím toho, na co ukážou svým fotoaparátem či kamerou v mobilu. Rozšíření této multimodální funkce je možné díky nasazení Gemini 3.1 Flash Live, nového hlasového a audio modelu, který je od základu vícejazyčný, takže umožňuje lidem po celém světě mluvit na vyhledávač přirozeně a v jazyce, který je jim nejbližší.
Jsongrep je open-source nástroj, který efektivně prohledává JSON dokumenty (editovat je neumí). Kompiluje regulérní jazyk dotazu do podoby deterministického konečného automatu (DFA), díky čemuž prochází strom JSON dokumentu pouze jednou a je v tom tedy rychlejší než jiné nástroje jako jsou například jq, JMESPath nebo jql. Jsongrep je napsaný v programovacím jazyce Rust, zdrojový kód je dostupný na GitHubu.
O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.
Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.
Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.
Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.
Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.
Byla vydána aktualizována Příručka pro začínající wikipedisty a wikipedistky (pdf).
Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.
Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.
[warn] (104)Connection reset by peer: mod_fcgid: read data from fastcgi server error. [error] [client 78.102.107.216] Premature end of script headers: index.pl [notice] mod_fcgid: process /home/www/perl/index.pl(10633) exit(communication error), terminated by calling exit(), return code: 255Jakákoliv rada jak dosáhnout kýženého výsledku je velmi vítaná, děkuji za ně..
Řešení dotazu:
<VirtualHost *:80>
ServerName perl.domain.tld
DocumentRoot /home/www/domain.tld/perl/
SuexecUserGroup domain domain
AddHandler cgi-script .pl
SetHandler cgi-script
Options +ExecCGI
</VirtualHost>
Ale běží to pod UID 33 (aspoň podle perlovský $< $>)
#!/usr/bin/perl -w print "Real UID".$<."\n"; print "Effective UID".$>."\n"; print "Real GID".$(."\n"; print "Effective GID".$)."\n";
[suphp] [search]
suPHP is a tool for executing PHP scripts with the permissions of their owners. It consists of an Apache module (mod_suphp) and a setuid root binary (suphp) ...Tak to máte prašť jak uhoď. Taky existuje něco jako suidperl. (Hledejte.) Bejt váma tak na ty virtualhosty spustím na každý zvlášť apache pod svým uživatelem.
/var/log/apache2/suexec.log?
/var/www (nevadí ale třeba, když je to symlink jinam)... ale vždy to zapíše chybu do logu a klientovi vrátí Internal server error.
Takhle to vypadá, že se suexec vůbec nektivuje. Pamatuji si, že ve starších verzích se musel ručně nastavit SUID bit na binárce suexecu, nebo ji dokonce někam přesunout, jinak to nefungovalo.
Nic ohledně suexec není ani v Apache error logu? Pokud je v konfiguraci ta volba SuexecUserGroup a nehlásí to chybu, je suexec modul určitě načtený, ale nefunguje.
whocares:~# apt-get install apache2-suexec-custom Reading package lists... Done Building dependency tree Reading state information... Done apache2-suexec-custom is already the newest version. whocares:~# a2enmod suexec Module suexec already enabled whocares:~# /etc/init.d/apache2 restart . whocares:~# ls -l /usr/lib/apache2/suexec -rwsr-xr-- 1 root www-data 15192 2009-11-14 22:09 /usr/lib/apache2/suexecJá právě už fakt nevím... Možná otázka, co by mělo být v /etc/apache2/suexec/*
apache2-suexec. Ta -custom verze se nejspíš musí nějak nastavit, a nějaká dokumentace k tomu zrovna moc není...
Provides the standard suexec helper program for mod_suexec. This version is compiled with document root /var/www and userdir suffix public_html. If you need different settings,
use the package apache2-suexec-custom.
<VirtualHost IP_ADDR:80>
ServerName domain.tld
ServerAlias *.domain.tld
ServerAlias jinadomena.tld
DocumentRoot /var/www/$USERNAME/domain.tld
<Directory /var/www/$USERNAME/domain.tld>
Options Indexes FollowSymLinks MultiViews ...
AllowOverride ...
Order allow,deny
allow from all
</Directory>
SuexecUserGroup $USERNAME skupina
...
- alternativně, pokud nebudete potřebovat aby na tu jednu složku směřovalo víc domén (nevyužijete ServerAlias jinadomena.tld) to lze zjednodušit tak, že bude DocumentRoot /var/www/$USERNAME a do jednotlivých složek se požadavky zařadí pomocí mod_rewrite pravidel
- pokud jde o nějaký "bežný" hosting, tak si připravte i řešení pro adresáře na subdomain.domain.tld, nejflexibilnější řešení je opět pomocí mod_rewrite
apache2-suexec, tj. bez potřeby jakékoliv konfigurace v /etc/apache2/suexec/...
Více domén (VirtualHost) pod jedním uživatelem rozhodně není problém (vyzkoušeno
).
For security and efficiency reasons, all suEXEC requests must remain within either a top-level document root for virtual host requests, or one top-level personal document root for userdir requests. For example, if you have four VirtualHosts configured, you would need to structure all of your VHosts' document roots off of one main Apache document hierarchy to take advantage of suEXEC for VirtualHosts. (Example forthcoming.)Z manpage
CONFIGURATION If suexec is called by a user with name ’username’, it will look into /etc/apache2/suexec/username for configuration. If the file does not exist, suexec will abort. By creating several config files, you can allow several different apache run users to use suexec. The first line in the file is used as the document root (/var/www in the standard suexec) and the second line in the file is used as the suffix that is appended to users’ home directories (public_html in standard suexec). If any of the lines is commented out (with #), suexec will refuse the corresponding type of request. It is recommended to comment out the userdir suffix if you don’t need it.Jdu se ještě podívat do některých věcí, jakým způsobem se to řeší u toho PHP/fastcgi, protože tohle jinak asi nepůjde... Potřebuju víc domén/složek s funkčním suexec, a to asi neprojde...
Ta -custom verze se nejspíš musí nějak nastavit, a nějaká dokumentace k tomu zrovna moc není...Dokumentace je ve /etc/apache2/suexec/www-data, když se to nainstaluje.
/var/www public_html/cgi-bin # The first two lines contain the suexec document root and the suexec userdir # suffix. Both features can be disabled separately by prepending a # character. # This config file is only used by the apache2-suexec-custom package.Umožňuje to změnit adresáře, které jsou jinak nastavené natvrdo
Ptáte se na to, jak sprovoznit suexec a zároveň speedycgi/mod_perl/atd? Odpověď je: nelze.Můžu se zeptat, čím to je? php-fcgid-suexec funguje v pohodě - v Debianu je to i s Googlením práce na hodinku, co je u perlu špatně?
You can't suid a part of a process. mod_perl lives inside the Apache process, so its UID and GID are the same as those of the Apache process.To není vlastnost perlu, ale správy procesů a práv v UNIXu.
#!/usr/bin/php nebo #!/usr/bin/perl nebo dokonce \x7fELF je už pak dost jedno.
SuexecUserGroup jde nastavovat jen ve <VirtualHost> sekci, a ne třeba v <Directory>, jako to jde u suPHP. Existuje na to sice jednoduchý patch, ale používaní vlastní verze komplikuje správu systému.
Pokud jde o Perl a FastCGI, podívejte se a zkuste třeba modul CGI::Fast.
To benchmark mpm-peruser, I used Apache's ab benchmark to load a simple phpinfo() page 1,000 times. I ran the benchmark five times, and averaged the results. mpm-prefork: average of 6.51 second mpm-itk: average of 37.01 seconds mpm-peruser: average of 6.95 seconds suphp: average of 164.677 seconds suexec: average of 127.219 seconds suexec + bash script: average of 134.836 seconds mod_php: average of 3.753 secondszdroj
ab -n 100 -c 5 http://ip/bench.php == FASTCGI + Suexec == Requests per second: 0.21 [#/sec] (mean) Time per request: 23316.264 [ms] (mean) Time per request: 4663.253 [ms] (mean, across all concurrent requests) == MOD_PHP == Requests per second: 0.22 [#/sec] (mean) Time per request: 23132.956 [ms] (mean) Time per request: 4626.591 [ms] (mean, across all concurrent requests)Jak je vidět, je to v mém případě úplně stejné. Prosté CGI jsem netestoval, očekával bych , že to bude jen o málo horší. * Moje testy s reálnou aplikací * Aplikace: titulní stránka portálu v PHP + PostgreSQL, provoz aplikace na běžném sdíleném hostingu byl nesnesitelně pomalý
ab -n 300 -c 10 http://ip/ == PLAIN CGI + Suexec == Requests per second: 6.40 [#/sec] (mean) Time per request: 1562.403 [ms] (mean) Time per request: 156.240 [ms] (mean, across all concurrent requests) == FASTCGI + Suexec == Requests per second: 13.33 [#/sec] (mean) Time per request: 749.939 [ms] (mean) Time per request: 74.994 [ms] (mean, across all concurrent requests) = MOD_PHP == Requests per second: 13.06 [#/sec] (mean) Time per request: 765.649 [ms] (mean) Time per request: 76.565 [ms] (mean, across all concurrent requests)U této zátěže je vidět, že prosté CGI má výkonnostní propad cca 50% oproti FastCGI či mod_php, které vycházení stejně. (Testoval jsem na: Debian Lenny, XenServer PV, 2 jádra z Xeonu 2.4GHz, 512MB RAM - během testu trvale volných 300MB)
/usr/bin/php-cgi. Stejně v tom bash skriptu jde nastavit plno užitečných věcí - cestu k php.ini, který se má použít; ulimit; nice; proměnné jako PHP_FCGI_CHILDREN - i když se spíš doporučuje nechat správu procesů plně na mod_fcgid a nenechávat PHP spouštět další podprocesy
u toho fastcgi+suexec je zvláštní, že výsledky jsou tak rozdílné...Teď jsem se nějak ztratil. Proti čemu jsou rozdílné?
Time per request: 8.943 [ms]tak je to nějaké divné.
Tiskni
Sdílej: