Kaklz Posted February 10, 2005 Report Share Posted February 10, 2005 Veidojot bilžu galerijas, bieži vien gribas uztaisīt kaut kādu normālu struktūru, kā glabājas faili uz servera. Visvienkāršākais variants laikam ir glabāt informāciju par bildēm datubāzē, bet failu sistēmā glabāt pašus attēlus. Lai nodalītu vienas galerijas attēlus no citiem, katrai bilžu galerijai veidojam atsevišķu mapīti (ar PHP skriptu automātiski pie jaunas galerijas izveidošanas administrācijas rīkā). Problēmas sākas momentā, kad servera administrators ir pamanījies ieslēgt Safe Mode, proti, PHP ar mkdir izveidotajām direktorijām uzliek Apache procesa UID un pēc tam vairs PHP skripti neko ar attiecīgo direktoriju nevar izdarīt, jo PHP skripta UID ir savādāks, nekā Apache UID. Tad nu jautājums. Vai un kā ir iespējams šo problēmu apiet?. Varbūt stulbi izklausīsies, bet vai to kaut kā maģiski nevar apiet ar chown() un chgrp() funkcijām? Teorētiski varētu visas bildes vienkārši mest vienā mapītē, taču tad rodas jautājums, vai nesāksies kaut kādas bremzes pie palielāka bilžu apjoma vienā direktorijā? Pie reizes varbūt kāds arī varētu izskaidrot, kas Safe Mode ir tik īpašs, ko nevarētu panākt vienkārši mazliet vairāk piekonfigurējot parastu PHP? Paldies! Link to comment Share on other sites More sharing options...
Venom Posted February 10, 2005 Report Share Posted February 10, 2005 chown(). chmod(), chgrp(), sudo, atkarīgs no apstākļiem bremzes sāksies safe mode ļauj neķēpāties php neprašņām, bet vienkārši piegriezt visu vajadzīgo ;( Link to comment Share on other sites More sharing options...
Grey_Wolf Posted February 10, 2005 Report Share Posted February 10, 2005 es sho problemu atrisinaaju shaadi: Saakuma izveidoju kaudzi ar direktorijaam. peec "koka" principa 1 lim :V - S = virietis sieviete 2 lim : d00, - d06 = nedeljas diena kad lietotaajs ir registreejies 3li: m00-m59 = minuute kad registreejies taalaak pie lietotaaja registraacijas tiek panjemts dzimums un registraacijas laiks no kura izskaitljo direktoriju prieksh katra lietotaaja (dzimums+diena+minuute) dod: piem. v/d03/m33 shis celsh tieknoglabaats baazee saadi kopaa sanaak 840 direktorijas P.S. es izveeleejos saadu daliijumu peec apsveruma ka: katru nedeeljas dienu pieregistreesies apmeeram vienaads skaits lietotaaju, taapat apmeram buus ar minuuteem - un vir un sievietes arii ir aptuveni vienaadi taatad - lietotaji buus sadaliiti daudzmaz vienmeeriigi Link to comment Share on other sites More sharing options...
Kaklz Posted February 10, 2005 Author Report Share Posted February 10, 2005 es sho problemu atrisinaaju shaadi:[cut] 13594[/snapback] interesants piegājiens :) Link to comment Share on other sites More sharing options...
рпр Posted February 10, 2005 Report Share Posted February 10, 2005 es sho problemu atrisinaaju shaadi:[cut] 13594[/snapback] interesants piegājiens :) 13595[/snapback] un tik browzee pa S katalogu... Link to comment Share on other sites More sharing options...
Grey_Wolf Posted February 10, 2005 Report Share Posted February 10, 2005 interesants piegājiens :) 13595[/snapback] Un kas veinas - vismaz nebremzee :) nu var jau daliit arii savaadaak :) Link to comment Share on other sites More sharing options...
Kaklz Posted February 10, 2005 Author Report Share Posted February 10, 2005 interesants piegājiens :) 13595[/snapback] Un kas veinas - vismaz nebremzee :) nu var jau daliit arii savaadaak :) 13598[/snapback] "interesants" šajā gadījumā bija vairāk nevis ar ironiju, bet kā kompliments ;) Link to comment Share on other sites More sharing options...
arnico Posted February 10, 2005 Report Share Posted February 10, 2005 :) gudrie praati parasti nespeej aizdomaaties liidz kautkam tik vienkaarsham :) vienmeer jau gribaas vsiu sarezgjiit :) apsveicama ideja! Link to comment Share on other sites More sharing options...
Venom Posted February 10, 2005 Report Share Posted February 10, 2005 spiežu roku (: nu tik ka trīs dienas atpakaļ taisīju vienai sistēmai lietotāja id sadalījumu pēc floor($id/1000) (piem. lietotājam ar nr 13456 būs apakšfolderis 13/) un pēc nickneimiem - ar substr($name,0,3) (venom iekš ven/) Link to comment Share on other sites More sharing options...
Klez Posted February 11, 2005 Report Share Posted February 11, 2005 par tam direktorijaam, ko saakumaa saaka paspriest .... ja birektorijai uzliek chmod($dir,0777) tad ar PHP safe_mode`ee arii neredz direktoriju? Link to comment Share on other sites More sharing options...
maar Posted February 17, 2005 Report Share Posted February 17, 2005 par tam direktorijaam, ko saakumaa saaka paspriest ....ja birektorijai uzliek chmod($dir,0777) tad ar PHP safe_mode`ee arii neredz direktoriju? 13616[/snapback] direktoriju redz, failus tajā izveidot arī var, bet tiesības mainīt ne :((( man tā reāla problēma... ir vēl tāda laba funkcija umask(), bet ar daudz nepalīdz. PHP5 var ar skriptu pieslēgties caur ftp un tā nomainit tiesības... Link to comment Share on other sites More sharing options...
Robis Posted February 17, 2005 Report Share Posted February 17, 2005 Manuprāt direktorija koks laika sadalijumam ir diezgan labs + ja vel pedejais direktorijs ir username, jo iznak labais dižais koks un maz bildes katrā zara galā! :) Link to comment Share on other sites More sharing options...
Gacha Posted February 17, 2005 Report Share Posted February 17, 2005 Bet vai nevar izveidot vienu direktoriju, kurai tiek klaat php un chmod butu 0777 un nosaukt to par sample. Tad kad bus nepiecieshama jauna galerijas direktorija, tad sho sampli kope tur, kur nepiecieshams un reneimo. Nesmu parbaudijis, bet domaju, ka UID paliks tads, kads tam bija pasha sakuma. Link to comment Share on other sites More sharing options...
hmnc Posted February 17, 2005 Report Share Posted February 17, 2005 ok. nedaudz novirzīšos no tēmas. vienreiz jau šis bija apspriests, bet tā arī pie normāla risinājuma nenonācu. kā tiek nodrošināta pieeja failiem lietotājiem kur ir ielogojušies (neielogotie lietotāji failus neredz). tb fiziski viņi atradīsies kaut kur failu sistēmā protams. der arī .htaccess risinājumi (esmu izmisumā ;) ). NEDER risinājums tipa: echo $fails. iemesli: lieli faili, script timeout. script timeout mainīt nemaz negribu. Link to comment Share on other sites More sharing options...
Venom Posted February 17, 2005 Report Share Posted February 17, 2005 ja ar .htaccess - tad var skatīties uz basic authentification pusi Require Valid User utml neesmu noņemies, tā kā precīzāk nemācēšu teikt manas idejas grozās ap: lietotājs logojas iekšā. viņam tiek a) uzģenerēts kaut kāds identifikātors B) iekš .htaccess tiek pierakstīts rewriterule uz šādu identifikatoru, bet ar allow from lietotāja ip only resp. ja lietotājs ir no att. IP un ar pareizu identifikatoru, apache viņam/i noplūdina pareizo failu Link to comment Share on other sites More sharing options...
Recommended Posts