[php] imagejpeg(): Unable to open for writing

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb dus een scriptje geschreven die thubmnails aanmaakt van heel wat foto's.
Hij neemt dus file, resized die, renamed die en dan staat ie der.
Dit werkt prima lokaal, maar wanneer ik het online ga testen dan loopt er iets fout.

PHP Warning: imagejpeg(): Unable to open 'thumb_1.jpg' for writing ..

Zo'n error krijg ik dan.
T lijkt me duidelijk dat het te maken heeft met rechten, maar welke dan? read/write heb ik want ik heb het script erin geplaatst?
Volgens mij iets te maken met write rechten van scripts, maar dat ben ik niet zeker.

Het is een Linux server van me webhoster, en als iemand dit herkent of weet hoe op te lossen, kun je ook even zeggen wat die webhoster precies moet veranderen.

Kan dit trouwens ook aan instellingen uit php.ini liggen?
safe mode bijvoorbeeld?

Ik heb al heel wat gegooled ja, en GoT search leverde ook niet veel meer op buiten iemand die er problemen mee had maar dan in ASP/Windows omgeving, zonder duidelijke oplossing.

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

't script wrodt vast uitgevoerd door apache en je directory is van 'jou' -> apache mag niet schrijven in jouw dir.

Acties:
  • 0 Henk 'm!

  • Zr40
  • Registratie: Juli 2000
  • Niet online

Zr40

Moderator General Chat

heeft native IPv6

De user waaronder de webserver draait heeft waarschijnlijk geen schrijfrechten voor die map. Dit kan veranderd worden door 'chmod u+w /pad/naar/map' (aangenomen dat de eigenaar van die map dezelfde user is als de webserver) maar dan kan elk script (ook die van andere gehoste sites) schrijven naar die map.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
M, hoe wordt het dan op een veilige manier opgelost?
Heb gehoord van CHMOD 777, maar lijkt me niet zo'n veilig id?

Acties:
  • 0 Henk 'm!

  • Zr40
  • Registratie: Juli 2000
  • Niet online

Zr40

Moderator General Chat

heeft native IPv6

chmod 777 geeft lees, schrijf en uitvoerrechten aan elke user, wat je niet graag wilt hebben voor een gehoste site ;)
Misschien een omweg, maar je kan proberen om met php via ftp de thumbnails te uploaden.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ja, dat lukt wel, maar als ik dat wil voor geuploade plaatjes, dan moet ik die downloaden, script uitvoeren, plaatje uploaden..
Is wel omslachtig, dus zocht naar een doenbare manier :p

Acties:
  • 0 Henk 'm!

  • Paradoxia
  • Registratie: Februari 2001
  • Laatst online: 29-05 17:43
Kan je dat niet veel makkelijker via ImageMagick of GD doen?

Nederlander in het enge Florida


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Het is een script dat GD2 functies aanroept ;)

Acties:
  • 0 Henk 'm!

  • Paradoxia
  • Registratie: Februari 2001
  • Laatst online: 29-05 17:43
Verwijderd schreef op 28 november 2003 @ 00:42:
Het is een script dat GD2 functies aanroept ;)
Oops :D Excuseert u mij :P

Nederlander in het enge Florida


Acties:
  • 0 Henk 'm!

  • Paradoxia
  • Registratie: Februari 2001
  • Laatst online: 29-05 17:43
Misschien helpt dit? Zet het in je upload script.

code:
1
2
3
<?
@chmod("path/naar/jouw/plaatje.ext", 0755 );
?>

Nederlander in het enge Florida


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Nee, dit blijft precies hetzelfde :|

Warning: chmod(): Operation not permitted in ..
Dan maar terug naar mijn gedacht. Ligt het niet aan het feit dat safe_mode = On staat op hun server?
En lokaal staat ie op Off..

Als het dit is, kun je ook eens uitleggen wat precies het verschil is of ie nu aan of uit ligt.
Wat is veiliger en waarom?
Of kan het dat niet zijn?

[ Voor 105% gewijzigd door Verwijderd op 28-11-2003 07:58 ]


Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Als de rechten goed staan moet je het volledige pad invullen, bijv.

home/sites/sites10/var/www/html/dir/bla/fotos/thumbnails

en niet alleen het relatieve pad ten opzichte van de locatie van de pagina.

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Heb ik gedaan, resulteert in mooi error.
Maar zoals me post hierboven denk ik aan safe mode.

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Natuurlijk helpt het chmodden met php niet, die had geen rechten er files te maken, waarom zou ie wel de rechten voor het aanpassen van de rechten hebben?? Zou nogal een security-issue zijn niet?

Je zult met je ftp-client de directory goed moeten zetten, dan voer je de rechten zelf uit, en zet het dan op 775 of 777, want 755 helpt je niks, dan zet je alleen de rechten voor jezelf "goed" (ik gok dat ze al zo zijn, zie de NOS-faq voor meer info over de getalletjes).

Acties:
  • 0 Henk 'm!

  • SinergyX
  • Registratie: November 2001
  • Laatst online: 11:01

SinergyX

____(>^^(>0o)>____

ik heb zelf een foto-album online, die 2x imagejpg gebruikt, werkt normaal. Betreffende host draait wel save mode.

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Als de safe_mode in actie komt dan staat dat ook bij de foutmelding... "safe_mode restriction bladiebla" enzo...

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb geen id wat er veranderd is, zal ik vanavond weten te zeggen maar nu opeens werkt het wel.
Hij zal iets veranderd hebben, maar wat..
In elk geval al bedankt voor de uitleg!

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Was tijdelijke chmod 777
Hm, nog id'en?

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Nou, chmodden naar 777 lijkt me een van de weinige werkbare opties.
Andere gebruikers kunnen er, met php iig, niet zomaar bijkomen omdat dan de safe_mode-restrictie wel in werking springt.

Zorg er wel voor dat je een aparte directory (liefst niet direct met een browser benaderbaar) voor je nieuw te creeeren files gebruikt.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ja ik heb er nu een beveiliging op gezet dat het niet te indexeren valt.
Password protection kan ik er ook opzetten maar ga ik niet doen omdat je dan login moet invoeren om die images te zien en dat is niet danig efficiënt.

Acties:
  • 0 Henk 'm!

  • GlowMouse
  • Registratie: November 2002
  • Niet online
owner op jezelf zetten (staat het al, als het goed is)
group veranderen naar de webservergroep (www, nobody oid, kun je achterkomen door tijdelijke chmod 777 en dan bestand wegschrijven met een PHP scriptje, en dan kijken welke group erbij hoort)

dan een chmod 770 uitvoeren
Pagina: 1