Apache cache letiltása
Fejlesztés közben kitéped a hajad, mert cache-ből kapod a fájlaid és így nem frissül a tartalom? A megoldás egyszerű, egy .htaccess fájlba vagy az apache konfigba tedd be ezt:
EnableSendfile Off
read more
Automatikus uppolás Hardveraprón
Tök jó dolog, hogy a hardveraprón lehet úgymond uppolni a meghirdetett terméked, azaz naponta kétszer a hirdetési lista elejére hozni, ezzel is segítve a termék eladását. Mostanában én is rendszeresen hirdetek és egyszerre több terméket is. Először azzal próbáltam egyszerűsíteni ezeknek a termékeknek az uppolását, hogy beraktam a könyvjelzőkhöz az uppoló oldal url-jét, ezzel viszont az a baj, hogy minden terméknél 2× kell kattintani. Ez 5 termék esetében napi 20 kattintást jelent, feltéve ha nem feledkezik meg róla az ember. Ez a másik probléma a könyvjelzős módszerrel. Beugrott, hogy a folyamat lefuthatna akár teljesen automatikusan is. Mire lesz szükség:
- Webtárhely, ahol tudsz futtatni PHP-t és van cURL extension hozzá
- Cron, az időzített futtatáshoz
Ugorjunk neki! Nyisd meg a kedvenc editorod, hozz létre egy új fájlt és másold be ezt:
<?php $IDs = array( // Ide írd be a termékeid id-ját, pl. 1123027 'ID_1', 'ID_2', 'ID_3' ); $loginName = 'Hardveraprós felhasználónév'; $loginPassword = 'Hardveraprós jelszó'; // Először be kell jelentkezni $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://hardverapro.hu/muvelet/hozzaferes/belepes.php"); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_POSTFIELDS, array('login_name' => $loginName, 'login_pass' => $loginPassword)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); curl_exec($ch); $baseURL = "http://hardverapro.hu/muvelet/apro/felhoz.php?id="; foreach($IDs as $ID) { // És uppolás minden elemnél curl_setopt($ch, CURLOPT_URL, $baseURL . $ID); curl_setopt($ch, CURLOPT_POST, true); curl_exec($ch); } curl_close($ch); ?>
Mentsd el a fájlt és töltsd fel a tárhelyedre. Az időzítés már kissé bonyolultabb, kivéve ha van cPanel-ed. Én konkrétan ott állítottam be. Ha nem áll rendelkezésedre cPanel vagy egyéb cron beállítást segítő alkalmazás, akkor használhatod saját operációs rendszered is az időzített feladatok futtatására. A linuxokon azt hiszem alapból van cron, a beállításáról a neten rengeteg jó leírást lehet találni. Az időzítés egyszerű és mindenki a saját igényei szerint állítsa be (én délelőtt 10 órát és este 6 órát lőttem be), viszont a parancs talán nem annyira egyértelmű:
wget -q -O /dev/null http://www.domain.hu/fájlnév.php
XAMPP: Couldn’t start MySQL!
Ma ebbe a kis problémába futottam, szerencsére megoldottam pár perc alatt a dolgot, de lehet, hogy van olyan aki nem lesz ilyen szerencsés. Szóljon hát neki ez a leírás:
Egyszerű jogosultsági problémával van dolgunk (vagy egy másik lehetőség, hogy még egy mysql instance fut). Hogy biztosan használjon a leírás, csekkoljuk a mysql error log-ot, mit is ír.
1 | tail -f /opt/lampp/var/mysql/{valami}.err |
Ha valami hasonló
InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /opt/lampp/var/mysql/ib_logfile0
, akkor az általam említett problémáról van szó. A megoldás:
1 | sudo chmod -R 777 /opt/lampp/var/mysql/ |