Régi képek tömörítése a webszerveren
find . -name "*.jpg" -mtime +200 -type f -exec jpegoptim -t "{}" \;
A 200 napnál régebbi JPEG képek optimalizálása
A Stackoverflow és a Google a barátunk, viszont nem mindenki ért angolul. Itt begyűjtök pár hasznos dolgot, ami a weboldal készítésnél hasznos lehet.
find . -name "*.jpg" -mtime +200 -type f -exec jpegoptim -t "{}" \;
A 200 napnál régebbi JPEG képek optimalizálása
Egyre gyakoribb, hogy támadják a DNS szervereket, vagy az Internet szolgáltató szervereivel vannak gondok és nem nyílnak meg weboldalak, mert nem sikerül feloldani a domaint. Ilyenkor jön jól a következő szolgáltatás: http://viewdns.info/iphistory
IP history results for legyes.hu.
==============
IP Address | Location | IP Address Owner | Last seen on this IP |
5.189.155.162 | Germany | Contabo GmbH | 2018-03-20 |
A WordPress beépített RSS kliens widgettel rendelkezik, de néha kicsit megbolondul benne a gyorsítótárazás. A cache idejének felülbírálásához a functions.php -hez ( Megjelenés – Szerkesztő – Sablon funkciók functions.php ) kell hozzáadni a következőt:
add_filter( ‘wp_feed_cache_transient_lifetime’, create_function(‘$a’, ‘return 600;’) );
Én nem vagyok rajongója annak, hogy Windows alatt futtassunk PHP-MySQL kombinációt. Hisz’ eleve sokkal több erőforrást adunk oda az operációs rendszernek, mint Linux alatt. Nincs meg a fájlrendszerrel való finomhangolás lehetősége sem, valamint az IIS és én sohasem leszünk barátok. Egy projekt alkalmával arra lettem figyelmes, hogy ugyanaz a kód fényévekkel gyorsabban fut Linux alatt, mint Windows alatt, egy egyszerűen semmi logikus magyarázat nem volt rá. Nos a problémát a Windows és a MySQL DNS feloldási anomáliája okozza, de az IPv6 is bekavarhat. Szal’ a PHP-ben a MySQL szerver címénél cseréljük ki a „localhost”-ot, „127.0.0.1”-re, valamint ha nincs rá szükségünk, akkor kapcsoljuk ki a hálózati kártyán az IPv6-ot. A DNS névfeloldás tiltása a my.cnf -ben sajnos nem segít.
Előtte (cache tiltva):
Utána (cache tiltva):
Az alábbi példa az egyszerűség kedvéért jQuery-vel val, de natív JS-ben ugyanezt a karaktert ( 
 ) kell hozzáfűzni. Sajnos a \\\n megoldás nekem nem működött jól, mert kint maradt egy \ jel.
$(‘#textarea_id’).append(‘
‘);
Sokan elkövetik azt a hibát, hogy a MySQL lekéréseket PHP ciklusba teszik, mert másképpen szerintük nem megoldható, hogy több soros eredményt tegyünk bele 1 SQL cellába a lekérdezés eredményénél. Ez a rossz módszer természetesen nagyon erőforrás pazarló és a weboldalak sebesség problémáinak nagy részét is ez okozza.
Az egyik jó megoldás ennek elkerülésére, ha a GROUP_CONCAT() paranccsal egyesítjük a subquery sorait. Viszont alapértelmezetten ebbe csak viszonyag rövid eredmény fér, így nagy eséllyel le lesz vágva a válasz vége. A méret néveléshez adjuk ki az SQL kérés előtt a következő parancsot:
SET SESSION group_concat_max_len = 100000;
Arról, hogy érdemes-e használni az AMP-t vagy hogy érdemes-e feláldozni a funkcionalitást a sebesség oltárán, megoszlanak a vélemények. Sajnos a legtöbb weboldal komoly módosítást (újraírást) igényel, hogy teljesen AMP kompatibilisen működhessen. Viszont ha elegendő a „fél-AMP” (hibrid-AMP, ami valójában a tartalmi oldalak AMP verziója) akkor sokat segíthet a következő linken található PHP class: https://github.com/Lullabot/amp-library
Kereső-optimalizálás és betöltési sebesség szempontból a szépen strukturált HTML forráskód rossz. De nem mindig engedhetjük meg azt a luxust, hogy tartunk mindenből egy fejlesztői – könnyen olvasható és kezelhető – változatot és egy tömörítettet. Ilyenkor segíthet ezen a linken található hasznos megoldás: http://php.net/manual/en/function.ob-start.php#71953 Olvass tovább…
A Microsoft és a Cisco élen jár abban, hogy saját módon értelmezzék a szabványokat, amiket amúgy az egész világ betart. Például ha CSV formátumot szeretnénk használni – amire RFC szabvány is van – akkor a Microsoft kicsit átalakítja a saját szájíze szerint. Például magyar lokalizációs területen SSV lesz belőle (Semicolon Separated Values azaz pontosvessző, Comma azaz vessző helyett). Az idézőjeleket is sajátságosan kezeli, a karakterkódolásról már ne is beszéljünk (persze, hogy Windows-1252 és nem UTF-8, amiben nagy eséllyel az adatbázisban van.
A megoldást ez a weboldal adta meg: https://www.skoumal.net/en/making-utf-8-csv-excel/ köszönet érte. A szokványos PHP-s leírásoktól ez abban tér el, hogy az UTF-8 fájl elejére odateszi a BOM-ot is (Byte Order Mark), aminek köszönhetően az Excel nem fogja valami alien titkosírásnak vélni az amúgy megfelelően formázott szöveget. Olvass tovább…
Aki PHPzik, bizonyára már találkozott a PHPMailerrel, ami a levélküldést hivatott megkönnyíteni. Természetesen támogatja a levélküldést SMTP szerveren keresztül is, ami akár a Gmail is lehet. Viszont a Google biztonsági dolgai be tudnak kavarni kicsit. Olvass tovább…
Ha későbbi PHP-s DateTime() objektumokhoz akarjuk használni, akkor ez a leghasznosabb:
Intl.DateTimeFormat().resolvedOptions().timeZone
A több böngészővel kompatibilis megoldás a hagyományos Date() használatával:
new Date().toString()
Korábban csak a HTML fejlécek módosítgatásával lehetett jelezni egy böngészőnek, hogy gyorsítótárazható a tartalom. Ezekkel lehetett csalni kicsit a webszerverben is, vagy az oldalt generáló scriptben is. A HTML5-ben viszont megjelent az úgynevezett „Application cache”, ami a weboldal offline (Internet kapcsolat nélküli) módjához ad egy leírót a böngésző számára, amit online módon is előnyünkre fordíthatunk. Olvass tovább…
Webapp fejlesztéskor felmerül az az igény, hogy valahogy tudni kellene a JavaScript kódban felmerülő hibákról. Persze van az a változat, hogy „Légy szíves nyomj egy Control+Shift+I -t, válaszd a Konzol-t és mondd el, hogy mit látsz”, de ez annyira nem praktikus. A reggeli kávé melletti Facebook postok görgetése közben egy hasznos webes blogra bukkantam, a https://blog.fps.hu -ra. Bejegyzéseikből látszik, hogy a témát náluk is az Élet adja. Ott találtam a témaindító bejegyzést: JavaScript hibák naplózása szerver oldalon . Amit én egy kicsit átszabtam:
Olvass tovább…
Copyright © 2023 | WordPress Theme by MH Themes