Zadejte hledaný výraz...

Komprimace JS a spojování souborů do jediného

Jan Štráfelda
verified
rating uzivatele
27. 8. 2013 11:35:33
Ahoj, všiml jsem si, že na Webtrhu jsou javascriptové soubory spojovány do jediného pomocí PHP skriptu compress.php a zároveň jsou z nich odstraněny mezery, komentáře apod. Totéž zde funguje i pro CSS.
Dělá to nějaký veřejně dostupný skript, nebo je to napsané na míru? Kde by se dalo najít více?
27. 8. 2013 11:35:33
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938174
acidclick
verified
rating uzivatele
27. 8. 2013 11:42:27
ja pouzivam
https://github.com/rgrove/jsmin-php
pro nette idealne v kombinaci s http://addons.nette.org/cs/webloader
27. 8. 2013 11:42:27
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938173
Petr Soukup
verified
rating uzivatele
(5 hodnocení)
27. 8. 2013 11:42:40
https://www.google.cz/search?q=minify+javascript
https://www.google.cz/search?q=minify+css
27. 8. 2013 11:42:40
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938172
Jan Štráfelda
verified
rating uzivatele
27. 8. 2013 11:51:54
Spouki: hledat Googlem jsem samozřejmě zkoušel, ale rád bych našel PHP skript, který to řeší automaticky (tj. není třeba zmenšovat soubory ručně), umí JS i CSS a ty soubory si sám spojuje. Testování a porovnávání podobných skriptů je pak docela časově náročné, budu tedy rád za navedení na konkrétní řešení, se kterými třeba máš zkušenosti.
Moc děkuji.
27. 8. 2013 11:51:54
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938171
Ahoj Shamane,
ten kompresor je náš vlastní a není na něm nic složitého.
Vezme všechny soubory, spojí je, minifikuje (JSMin pro JS, CssMin pro CSS), gzipuje (pokud klient podporuje gzip), cachuje, pošle s hlavičkami na cachování na 1 rok.
Něco víc si o tom můžeš přečíst tady
https://blog.webtrh.cz/rychlost
29. 8. 2013 10:35:10
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938170
Jan Štráfelda
verified
rating uzivatele
30. 8. 2013 17:27:27
Martin Schlemmer, acidclick: děkuji za odpovědi, přesně to jsem hledal, podívám se na to.
30. 8. 2013 17:27:27
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938169
Jan Štráfelda
verified
rating uzivatele
2. 9. 2013 21:34:12
Martin Schlemmer: tak už to funguje, ještě jednou děkuji za tipy. Jen jsem proti Webtrhu ještě vytvořil v htaccess pravidlo, kterým daný soubor "css-compress/soubor1+soubor2" podstrkávám skriptu "compress.php?url=compress/soubor1+soubor2". Zajišťuje to splnění pravidla, že statické zdroje nemají mít query stringy (protože pak je některé keše nekešují).
2. 9. 2013 21:34:12
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938168
Tak to určitě jde také vylepšit. Nikde jsem ale nenarazil na informaci, že by nějaký klient měl problém s cachováním zdrojů s argumenty. Máš na to prosím nějaký zdroj?
2. 9. 2013 23:08:51
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938167
Jan Štráfelda
verified
rating uzivatele
3. 9. 2013 10:19:19
Pokud chápu správně, týká se to kešování na proxy serverech.
- teorie: https://developers.google.com/speed/docs/best-practices/caching?hl=sv&csw=1#LeverageProxyCaching
- experiment: http://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/
3. 9. 2013 10:19:19
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938166
Díky za odkazy.
Tady je přímo to inkriminované nastavení ve Squid.
http://wiki.squid-cache.org/ConfigExamples/DynamicContent
3. 9. 2013 10:54:27
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938165
FAKAM
verified
rating uzivatele
(10 hodnocení)
3. 9. 2013 14:13:23
Jednoduché spojenie pre JS a CSS http://rakaz.nl/code/combine. Škoda, že to ešte neminifikuje.
3. 9. 2013 14:13:23
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938164
majkl-cz
verified
rating uzivatele
21. 9. 2013 13:27:21
Zdravím pánové. Jsem v optimalizaci výkonu nováček. Chci se zeptat: když tu děláte vlastní skript na spojení a minifikaci javascriptů, tak tuto operaci provádíte při každém požadavku znovu přímo na výstup ke klientovi a nebo to provedete jednou s výstupem do souboru a ten nalinkujete v hlavičce? Díky
21. 9. 2013 13:27:21
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938163
Kamil Tomšík
verified
rating uzivatele
(3 hodnocení)
22. 9. 2013 14:51:03
Ja k tomuto ucelu pouzivam vlastni reseni - je to script-loader inspirovany meteorem, muzete ho stahnout z npm a k dispozici jsou samozrejme i zdrojaky, neni nutne to nijak konfigurovat, soubory najde automaticky.
licence MIT, vice tady: https://github.com/cztomsik/main-js
22. 9. 2013 14:51:03
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938162
Napsal majkl-cz;1001047
tuto operaci provádíte při každém požadavku znovu přímo na výstup ke klientovi a nebo to provedete jednou s výstupem do souboru a ten nalinkujete v hlavičce? Díky
Vždy jen jednou a pak to cachujeme.
22. 9. 2013 21:05:03
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938161
Jan Štráfelda
verified
rating uzivatele
23. 9. 2013 12:33:52
tuto operaci provádíte při každém požadavku znovu přímo na výstup ke klientovi a nebo to provedete jednou s výstupem do souboru a ten nalinkujete v hlavičce? Díky
Přesně tak, jednou a kešujeme, je to tak mnohem rychlejší.
23. 9. 2013 12:33:52
https://webtrh.cz/diskuse/komprimace-js-a-spojovani-souboru-do-jedineho#reply938160
Pro odpověď se přihlašte.
Přihlásit