Closed (duplicate)
Project:
ImageCache
Version:
5.x-2.3
Component:
Code
Priority:
Critical
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
12 Mar 2009 at 16:14 UTC
Updated:
22 Apr 2009 at 14:00 UTC
As described here (http://drupal.org/node/359898). On a multisite only private file system allows for the successful uploading and display of images. If set to public, no images are stored in their respective folders and of course none are displayed from within drupal.
Comments
Comment #1
jordanmagnuson commentedSame for me. If it's alright I'm changing this to critical, since this makes imagecache useless on any multisite configuration using public file downloads--which I'm guessing is most multisites out there. I'm in a real bind because I have to use a public file system in order for some of my necessary modules to work, but I also depend on imagecache: help!
Comment #2
drewish commentedthere's not enough detail here to have any idea what's going on. are you using clean URLs? what do the output URLs look like? what should they look like?
Comment #3
jordanmagnuson commentedI appologize. Firs of all, here is my directory structure:
You can see here that the files folder is not in the default location for a drupal single site environment, which would be Root/files. Instead it is at Root/Sites/mysite1/files.
Secondly, I am using clean urls, and the urls that imagecache is outputting (where it is trying to find the cached images) is correct and identical in both private and public transfer mode; the cached image url's are printed like so:
http://www.mysite1.org/sites/www.mysite1.org/files/imagecache/frontpage_pictures/picture.jpgIn public transfer mode the imagecache folder and resized images are simply not created (at least not where expected... I've tried probing around a bit on my ftp server and haven't found them anywhere).
Please let me know if I can provide any further useful information.
Thank you so much for your help,
Jordan
Comment #4
jordanmagnuson commentedChanging this to active; please let me know if I can assist with more information.
Jordan
Comment #5
jordanmagnuson commentedAny help?
Comment #6
pribeh commentedSorry for taking so long,
I have to check on this with my sys admin today and then I will be able to provide you with more info.
Comment #7
jordanmagnuson commentedWell, I just set up a fresh multisite with nothing but image_cache (and default modules) installed, and I had no problem using the public transfer method (setup was xampp on Windows machine). I'm guessing that some other module is screwing things up here? Must be something fairly common though, as multiple people have had this problem.
Any ideas? I will post a full list of modules I am running, and try turning things off methodically, but it'll take some time, as I've got circa 75 modules installed on the site that's having trouble.
The above test was run using:
Drupal 5.16
ImageCache 5.x-2.3
ImageAPI 5.x-1.5-beta1
GD Library: bundled (2.0.34 compatible)
Windows XP Service Pack 3
XAMPP 1.6.6a
PHP 5.2.5
MySQL 5.0.51a
Web Server: Apache/2.2.8 (Win32) DAV/2 mod_ssl/2.2.8 OpenSSL/0.9.8g mod_autoindex_color PHP/5.2.5
Directory structure:
File System Path: sites/site_1/files
Clean URL's enabled.
Default mysql database storage engine set to InnoDB.
Comment #8
jordanmagnuson commentedI tried uninstalling every module on my production site that's having trouble, and reinstalling exactly the same modules that "worked" successfully in my test freshly-installed site. Was careful to uninstall and re-install image-cache and image-api in the correct order. NO CHANGE.
I then decided to go through imagecache.module and check to see how public and private transfer methods were handled differently. Found this block of code:
Changed case FILE_DOWNLOADS_PUBLIC to be the same as case FILE_DOWNLOADS_PRIVATE and Voila: It worked!. I am now thinking that this must be a path issue of some sort? Assuming that this is the case, I'm changing the status on this to bug report. Correct me if I'm being premature (or just wrong).
Comment #9
drewish commenteddavidlerin, wait so is your problem with public or private file transfers? because what that change would do is effectively switch you back to public transfers.
Comment #10
pribeh commentedOur issue is that on a multi-site install imagecache does not work with public file transfers. Thanks for discovering the path issue davidlerin!
Comment #11
jordanmagnuson commentedHi drewish. My problem was with public file transfers: the private method was working okay. I think the switch I made is the opposite of what you are thinking: I set both cases above to be the same as FILE_DOWNLOADS_PRIVATE, not public. I was then able to switch the file transfer to public, and imagecache continued to work, because it was using the PRIVATE method path.
I don't know why this is an issue with multisite installations, and not single site, and I don't know why it was not an issue with my freshly installed test site...
Comment #12
pribeh commentedI'm going to test this tomorrow and get back to you davidlerin.
Comment #13
ikok commented@davidlerin
Thank you very much, your method help me to fix the same problem that occurred on 6.x-2.0-beta8 (on a single site) as well =)
Comment #14
drewish commentedI think this is really the same issue as #366177: Imagecache seems to work only if the file system is set to private
Comment #15
scafmac commentedFor multisite D5 sites, a recent ImageAPI upgrade can cause similar problems. If you don't have the .htaccess file problem, see #441586: Patch for 6.x-1.x-dev breaks imageapi_imagemagick on multisite configurations on Linux for info & patch.