WebChemistry / images

Image storage for Nette Framework
36 stars 20 forks source link

Uložení obrázku v console command #40

Closed sikulam closed 5 years ago

sikulam commented 5 years ago

Ahoj, zkouším uložit obrázky z XML feedu přes commannd z console

$resource = $this->imageStorage->createLocalResource($imagePath);
$resource->setNamespace($namespace);
$imagePath = $this->imageStorage->save($resource);

vše proběhne bez chyb ale obrázek se fyzicky neuloží (nevyhodí to ani žádnou chybu) jediné co jsem pak našel v logu že není oprávnění. Pokud ukládám soubor přes formulář tak vše funguje jak má. Je možné nějak nastavit jinou konfiguraci pro konzoli?

výpis z konzole

[2019-04-10 17-54-46] PHP Warning: mkdir(): Permission denied in /var/www/clients/client2/web29/web/vendor/webchemistry/images/src/Storages/LocalStorage.php:275  @  CLI (PID: 23280): /var/www/clients/client2/web29/web/bin/console app:yourNewStyleImport -vvv 
[2019-04-10 17-54-46] PHP Warning: imagejpeg(www/images/assets/product/original/2b24ee1588836128c4f9ba9542b0f8ba.jpg): failed to open stream: Permission denied in /var/www/clients/client2/web29/web/vendor/nette/utils/src/Utils/Image.php:536  @  CLI (PID: 23280): /var/www/clients/client2/web29/web/bin/console app:yourNewStyleImport -vvv 
MartkCz commented 5 years ago

Ahoj

Jediné, co můžu udělat, tak aby to vyhazovalo expection.

PHP process, který spouštíš nemá práva na vytvoření složky, zkusil bych nastavil chmod na 777

sikulam commented 5 years ago

Ahoj, spíš mi jde o to proč se to přes ten command chce uložit do jiné složky než uložení přes formulář. Práva na tom hostingu změnit nemohu :-(. v configu to mám takto

images:
    enable: yes
    defaultImage: null
    wwwDir: www
    assetsDir: images/assets
sikulam commented 5 years ago

Podařilo se mi to vyřešit zadání absolutní cesty :-) wwwDir: /var/www/clients/client2/web29/web/www

MartkCz commented 5 years ago

wwwDir se bere z parametru %wwwDir%

Takže asi on vede na jinou složku. Nejlepším řešením je změnit algoritmus pro získání www složky pro cli.

https://github.com/nette/bootstrap/blob/master/src/Bootstrap/Configurator.php#L162