04. juli 2001 - 17:40Der er
9 kommentarer og 1 løsning
Why?!?
Hey der, jeg har sat og leget lidt med en PHP shop og har da også fået det meste til at virke.. Det sidste problem ligger i den fil der skal uploade billederne til shoppen, den melder fejl i linje 31 som er:
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
en lille hjælp der måske kan bruges ?? taget fra faq på Azero som jo er serveren i dette tilfelde..!
PHP file upload support for Unix Husk at når du giver en bruger mulighed for at uploade til dit webhotel, kan han uploade kode der giver ham de samme muligheder du som administrator har hvis han kan browse filen bagefter. Det anbefales derfor på det kraftigste at du kun giver mulighed for at uploade til /db folderen, da den ikke er synlig via internettet.
Skal du uploade til en folder der umiddelbart kan browses via internettet, er det derfor vigtigt at du checker på endelsen og f.eks. kun tillader filer der ender på .jpg eller .gif. En bedre løsning er at lade brugere uploade til /db folderen, og derefter bruge programmeringskode til at flytte filen hen et sted hvor den må ligge, samtidig med at du checker endelsen.
PHP file upload er som standard slået fra på de nyeste unixwebservere, f.eks. Hanne og Gudrun. Det skyldes bl.a. problemer med rettigheder af filer uploadet med file upload, og du skal kontakte os via supportformularen hvis du vil have det slået til.
PHP fileupload er desuden slået fra som standard da det skal omgås med varsomhed og en vis dygtighed. En ondskabsfuld bruger kan muligvis uploade et script til at kigge i bl.a. din source kode, der f.eks. kan indeholdende MySQL kodeord og andet privat information. Forvent det værste af dine brugere, og husk altid som minimum at checke at den uploadede fil ikke er et script, dvs. ender på pl/cgi/py/php eller php3. Det er der desværre _ikke_ taget højde for i nedenstående script.
Har man adgang til php fileupload skal være opmærksom på bl.a. følgende:
Biblioteket /ftpbrugernavn/phpupload/ skal eksistere i ens ftpbibliotek, og have rettighederne 777. Det bibliotek som man kopierer/flytter den uploadede fil til skal være 777, dvs biblioteket \"moveuploadsto\" i eksemplet nedenfor. Man kan sætte umask(000) så den uploadede fil bliver 777. Husk at tallet i umask kan opfattes som om det trækkes fra 777 og resultat er den værdi som filen får. Dvs umask(011) giver en uploadet fil værdien 766. VIGTIGT: ejeren af den uploadede fil vil være webserver brugeren og derfor kan man _ikke_ åbne den uploadede fil gennem et andet PHP script, heller ikke selvom filen er 777. Åbning af filen tillades ikke da man ikke selv \"ejer\" den uploadede fil. Der er pt _ingen_ løsning på dette problem. Ejerskabet af filer uploadet gennem PHP bliver sat korrekt i løbet af natten. Derved bliver dit diskforbrug på serveren også korrekt i løbet af natten. Der er pt ingen måde at se hvor meget plads man bruger på serveren, se evt unix supporten. Lidt kode eksempel, tilpas til dit eget site:
<html><body>
<? if (is_uploaded_file($HTTP_POST_FILES[\'userfile\'][\'tmp_name\'])) { umask(033); copy($HTTP_POST_FILES[\'userfile\'][\'tmp_name\'], \"path/\".$HTTP_POST_FILES[\'userfile\'][\'name\']); // Windows brugere, erstat \"path\" med \"d:\\\\home\\\\FtpBrugernavn\\\\db\\\\\" } else { echo \"Possible file upload attack: filename \", $HTTP_POST_FILES[\'userfile\'][\'name\']; } ?>
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.