Не генерируются превью в minishop2
После переноса одного сайта на другой сервер (на Ubuntu), перестали генерироваться превью в Minishop2.
Кажется это связанно с правами, но не понятно с какими именно и на какие папки.
/assets/images/products — в каталогах товаров не создаются папки превьюшек (120х90 и т.д.)
Также заметил что сам MODx не позволяет просто создать каталог в корне сайта. Пишет У веб-сервера не хватает прав для добавления каталога там.
Еще я после переноса обновил все файлы MODx'а., и при этом папка setup сама не удалилась.
Подскажите в чем может быть проблема?
Лог после добавления картинки в товар большущий:
Кажется это связанно с правами, но не понятно с какими именно и на какие папки.
/assets/images/products — в каталогах товаров не создаются папки превьюшек (120х90 и т.д.)
Также заметил что сам MODx не позволяет просто создать каталог в корне сайта. Пишет У веб-сервера не хватает прав для добавления каталога там.
Еще я после переноса обновил все файлы MODx'а., и при этом папка setup сама не удалилась.
Подскажите в чем может быть проблема?
Лог после добавления картинки в товар большущий:
[2015-03-25 05:51:32] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/ajaxform/model/ajaxform/ajaxform.class.php : 74) PHP warning: file_put_contents(/var/www/nikolai/data/www/САЙТ.РУ/assets/components/ajaxform/js/config.js): failed to open stream: Permission denied
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/processors/mgr/gallery/upload.class.php : 147) PHP warning: tempnam(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/nikolai/data:.)
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/processors/mgr/gallery/upload.class.php : 148) PHP warning: file_put_contents(): Filename cannot be empty
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/processors/mgr/gallery/upload.class.php : 149) PHP warning: getimagesize(): Filename cannot be empty
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/processors/mgr/gallery/upload.class.php : 160) PHP warning: unlink(): open_basedir restriction in effect. File() is not within the allowed path(s): (/var/www/nikolai/data:.)
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/model/minishop2/msproductfile.class.php : 95) PHP warning: tempnam(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/nikolai/data:.)
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/model/minishop2/msproductfile.class.php : 96) PHP warning: file_put_contents(): Filename cannot be empty
[2015-03-25 05:51:50] (ERROR @ /assets/components/minishop2/connector.php) Could not generate thumbnail for "/assets/images/products/190/064a3195747b4e0d0b8f4605ea6515e9.jpg". Array
(
[0] => phpThumb() v1.7.13-201406261000 in file "phpthumb.class.php" on line 220
[1] => setCacheDirectory() starting with config_cache_directory = "/var/www/nikolai/data/www/САЙТ.РУ/core/cache/phpthumb/" in file "phpthumb.class.php" on line 961
[2] => setting config_cache_directory to realpath(/var/www/nikolai/data/www/САЙТ.РУ/core/cache/phpthumb) = "/var/www/nikolai/data/www/САЙТ.РУ/core/cache/phpthumb" in file "phpthumb.class.php" on line 989
[3] => setSourceFilename() set $this->sourceFilename to "" in file "phpthumb.class.php" on line 271
[4] => $AvailableImageOutputFormats = array(text;ico;bmp;wbmp;gif;png;jpeg) in file "phpthumb.class.php" on line 925
[5] => $this->thumbnailFormat set to $this->config_output_format "jpeg" in file "phpthumb.class.php" on line 936
[6] => $this->thumbnailFormat set to $this->f "jpeg" in file "phpthumb.class.php" on line 943
[7] => $this->thumbnailQuality set to "99" in file "phpthumb.class.php" on line 953
[8] => phpThumb() v1.7.13-201406261000
http://phpthumb.sourceforge.net
Error messages disabled.
edit phpThumb.config.php and (temporarily) set
$PHPTHUMB_CONFIG['disable_debug'] = false;
to view the details of this error in file "phpthumb.class.php" on line 4050
[9] => SetCacheFilename() _src set from md5($this->sourceFilename) "" = "d41d8cd98f00b204e9800998ecf8427e" in file "phpthumb.class.php" on line 3443
[10] => SetCacheFilename() _par set from md5(_bgffffff_farC_h90_w120_dpi150_q99) in file "phpthumb.class.php" on line 3476
[11] => starting ExtractEXIFgetImageSize() in file "phpthumb.class.php" on line 3236
[12] => skipping GetImageSize() because $this->sourceFilename is empty in file "phpthumb.class.php" on line 3248
[13] => GetImageSize("") failed in file "phpthumb.class.php" on line 3279
[14] => $this->useRawIMoutput=false because "bg" is set in file "phpthumb.class.php" on line 1502
[15] => $this->useRawIMoutput=false after checking $UnAllowedParameters in file "phpthumb.class.php" on line 1508
[16] => ImageMagickThumbnailToGD() aborting because $this->sourceFilename is empty in file "phpthumb.class.php" on line 1552
[17] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3286
[18] => SetOrientationDependantWidthHeight() starting with ""x"" in file "phpthumb.class.php" on line 3215
[19] => SetOrientationDependantWidthHeight() setting w="120", h="90" in file "phpthumb.class.php" on line 3231
[20] => EXIF thumbnail extraction: (size=0; type=""; 0x0) in file "phpthumb.class.php" on line 3343
[21] => starting SourceImageToGD() in file "phpthumb.class.php" on line 3603
[22] => Not using EXIF thumbnail data because $this->exif_thumbnail_data is empty in file "phpthumb.class.php" on line 3674
[23] => $this->gdimg_source is still empty in file "phpthumb.class.php" on line 3726
[24] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3728
[25] => phpThumb() v1.7.13-201406261000
http://phpthumb.sourceforge.net
Error messages disabled.
edit phpThumb.config.php and (temporarily) set
$PHPTHUMB_CONFIG['disable_debug'] = false;
to view the details of this error in file "phpthumb.class.php" on line 4050
[26] => SourceImageToGD() failed in file "phpthumb.class.php" on line 351
)
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/model/minishop2/msproductfile.class.php : 95) PHP warning: tempnam(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/nikolai/data:.)
[2015-03-25 05:51:50] (ERROR @ /var/www/nikolai/data/www/САЙТ.РУ/core/components/minishop2/model/minishop2/msproductfile.class.php : 96) PHP warning: file_put_contents(): Filename cannot be empty
[2015-03-25 05:51:50] (ERROR @ /assets/components/minishop2/connector.php) Could not generate thumbnail for "/assets/images/products/190/064a3195747b4e0d0b8f4605ea6515e9.jpg". Array
(
[0] => phpThumb() v1.7.13-201406261000 in file "phpthumb.class.php" on line 220
[1] => setCacheDirectory() starting with config_cache_directory = "/var/www/nikolai/data/www/САЙТ.РУ/core/cache/phpthumb/" in file "phpthumb.class.php" on line 961
[2] => setting config_cache_directory to realpath(/var/www/nikolai/data/www/САЙТ.РУ/core/cache/phpthumb) = "/var/www/nikolai/data/www/САЙТ.РУ/core/cache/phpthumb" in file "phpthumb.class.php" on line 989
[3] => setSourceFilename() set $this->sourceFilename to "" in file "phpthumb.class.php" on line 271
[4] => $AvailableImageOutputFormats = array(text;ico;bmp;wbmp;gif;png;jpeg) in file "phpthumb.class.php" on line 925
[5] => $this->thumbnailFormat set to $this->config_output_format "jpeg" in file "phpthumb.class.php" on line 936
[6] => $this->thumbnailFormat set to $this->f "jpeg" in file "phpthumb.class.php" on line 943
[7] => $this->thumbnailQuality set to "99" in file "phpthumb.class.php" on line 953
[8] => phpThumb() v1.7.13-201406261000
http://phpthumb.sourceforge.net
Error messages disabled.
edit phpThumb.config.php and (temporarily) set
$PHPTHUMB_CONFIG['disable_debug'] = false;
to view the details of this error in file "phpthumb.class.php" on line 4050
[9] => SetCacheFilename() _src set from md5($this->sourceFilename) "" = "d41d8cd98f00b204e9800998ecf8427e" in file "phpthumb.class.php" on line 3443
[10] => SetCacheFilename() _par set from md5(_bgffffff_farC_h270_w360_dpi150_q99) in file "phpthumb.class.php" on line 3476
[11] => starting ExtractEXIFgetImageSize() in file "phpthumb.class.php" on line 3236
[12] => skipping GetImageSize() because $this->sourceFilename is empty in file "phpthumb.class.php" on line 3248
[13] => GetImageSize("") failed in file "phpthumb.class.php" on line 3279
[14] => $this->useRawIMoutput=false because "bg" is set in file "phpthumb.class.php" on line 1502
[15] => $this->useRawIMoutput=false after checking $UnAllowedParameters in file "phpthumb.class.php" on line 1508
[16] => ImageMagickThumbnailToGD() aborting because $this->sourceFilename is empty in file "phpthumb.class.php" on line 1552
[17] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3286
[18] => SetOrientationDependantWidthHeight() starting with ""x"" in file "phpthumb.class.php" on line 3215
[19] => SetOrientationDependantWidthHeight() setting w="360", h="270" in file "phpthumb.class.php" on line 3231
[20] => EXIF thumbnail extraction: (size=0; type=""; 0x0) in file "phpthumb.class.php" on line 3343
[21] => starting SourceImageToGD() in file "phpthumb.class.php" on line 3603
[22] => Not using EXIF thumbnail data because $this->exif_thumbnail_data is empty in file "phpthumb.class.php" on line 3674
[23] => $this->gdimg_source is still empty in file "phpthumb.class.php" on line 3726
[24] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3728
[25] => phpThumb() v1.7.13-201406261000
http://phpthumb.sourceforge.net
Error messages disabled.
edit phpThumb.config.php and (temporarily) set
$PHPTHUMB_CONFIG['disable_debug'] = false;
to view the details of this error in file "phpthumb.class.php" on line 4050
[26] => SourceImageToGD() failed in file "phpthumb.class.php" on line 351
)
Поблагодарить автора
Отправить деньги
Комментарии: 11
Поставил права 777 на директорию домена и помогло.
Насколько это безопасно ставить права 777 вместо 755 на директорию домена? По умолчанию стоит 755.
Насколько это безопасно ставить права 777 вместо 755 на директорию домена? По умолчанию стоит 755.
777 значит, что любой юзер сервера может записать файлы в эту директорию. Если такие разрешения стоят на всех директориях сайта, то любой юзер сервера может писать туда, что угодно.
То же самое и с файлами.
То же самое и с файлами.
C чем тогда может быть связанна такая проблема с правами?
Естественно, если у php скрипта не хватает прав на запись в директорию — он не сможет туда ничего записать.
Но это не означает, что для решения проблемы нужно дать эти права всем обитателям сервера.
Пиши в поддержку хостинга, спрашивай, как сделать так, чтобы php нормально работал при разрешениях 755 на директории и 644 на файлы.
Но это не означает, что для решения проблемы нужно дать эти права всем обитателям сервера.
Пиши в поддержку хостинга, спрашивай, как сделать так, чтобы php нормально работал при разрешениях 755 на директории и 644 на файлы.
Поддержка на FirstVDS написала, чтобы я сам решал эту проблему. =)
Где то нарыскал момент про то, что php запускается от пользователя которого можно указать в apach. Или как то подругому, но я понял так.
Поправил файл /etc/apache2/envvars
с
Где то нарыскал момент про то, что php запускается от пользователя которого можно указать в apach. Или как то подругому, но я понял так.
Поправил файл /etc/apache2/envvars
с
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
наexport APACHE_RUN_USER=nikolai
export APACHE_RUN_GROUP=www-data
Вроде работает. Насколько такое решение экологично?)
Ну если у тебя свой VDS, естественно, что все проблемы внутри — твои.
По Apache2 не подскажу, не помню. Но главный смысл в том, чтобы файлами сайта рулил отдельный юзер, без привилегий, и у него не было бы доступа никуда, кроме как к сайту. Это чтобы при взломе сайта, злоумышленник не мог наворотить дел на сервере.
Моя инструкция по настройке своего сервера находится здесь. Правильный хостинг, где всё так безопасно настроено — modhost.pro.
По Apache2 не подскажу, не помню. Но главный смысл в том, чтобы файлами сайта рулил отдельный юзер, без привилегий, и у него не было бы доступа никуда, кроме как к сайту. Это чтобы при взломе сайта, злоумышленник не мог наворотить дел на сервере.
Моя инструкция по настройке своего сервера находится здесь. Правильный хостинг, где всё так безопасно настроено — modhost.pro.
Спасибо за инструкцию, я после ее просмотре понял куда копать и там прикольная музыка=)
Копаешь в сторону nginx + php5-fpm без апач2? :)
Когда искал решение с настройками прав, то уже был в шаге от покупки третьего сервера и настройкой его по видео-инструкции.
Но видимо мне суждено быть с апачем.
Но видимо мне суждено быть с апачем.
Столкнулся с такой же проблемой при переносе сайта на Open Server. На хостинге все ок с превьюшками, на локалке не создаются. Тоже думал о правах, но тут же винда. Разрешение на запись во все папки и файлы не помогло. Может подскажете как можно решить это?
Проблема была в Open Server. Для решения проблемы с генерацией превьюшек в minishop2 необходимо в php.ini вашей версии (например в C:\OpenServer\userdata\config\PHP-5.4_php.ini) изменить параметр memory_limit с -1 на любой другой реальный, например memory_limit = 128M
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.