TCH (statz) | #1, Főfasz (10443) |
2651 | #501d | ^ | Idézet | Sat, 30 May 2020 21:37:13 +02 |
94.21.*.* | *.pool.digikabel.hu |
Az RTFM után itt az RTFC is. Az egész rohadt estém arra ment rá, hogy egy sima rekurzív könyvtárbejárásban az összes fájl/könyvtárlétezést vizsgáló függvény hamisat adott vissza, holott a könyvtár létezett. Az is_dir(), az is_file() és a file_exists() is. De se warningot se hibát nem adtak. A filetype(), aminek 'dir'-t kellett volna, semmit nem adott vissza, csak dobott egy hibát a logba, hogy "PHP Warning: filetype(): Lstat failed for XYZ", de hogy konkrétan miért, azt már képtelen volt odaírni. Képtelen voltam rájönni, hogy mi a franc baja van. Kínomban - bár nem jelzett hozzáférési hibát (különben is a www-data volt a tulaja 644-es maszkkal) - aszontam neki, hogy chmod 744 XYZ. És működött. Rákerestem és a kugli kihozta az is_dir() manualjában, hogy (Most lecsekkoltam az is_file() manuálját is, ott is csak a kommentek között írják.) Félreértés ne essék, ez tényleg logikus, hogy ha a szülő könyvtár nem "beléphető", akkor nem tud belelépni és megnézni, hogy a könyvtár létezik-e, a baj nem ezzel van, hanem azzal, hogy ilyenkor error, vagy legalább warning helyett egyszerűen hamisat ad vissza, mintha nem létezne! Na, ez a kurwa nagy fail! Az ember meg áll, mint egy lefagyott vindóz és ha nem jut eszébe, hogy beléphetővé tegye a szülőt, akkor vakarhatja a fejét ítéletnapig. PHP SUXX! vsftpd bazdmeg, mert megérdemeljük! Állítólag már 12 éve, a 2.0.X óta javítva van, hogy leálláskor nem lövi ki az összes child processét, de én ma ezzel szoptam 2020-ban a 3.0.X-ben! Ez az ftp szerver egy fos! Darálóba a fejlesztőjével! Megoldás: /etc/init.d/vsftpd stop && killall vsftpdNo comment... Sz*rk: Itt is hagyok pár linket, pár ígéretes FTP szerverhez. https://www.uftpserver.com/ https://www.pureftpd.org/ http://www.proftpd.org/ (Ez utóbbi talán overkill, de színes szagos, mindent tud, meg még GUI konfigurátor is van hozzá (GAdmin).) |