[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Phpgroupware-users] VFS and M$ issues
From: |
Chris Weiss |
Subject: |
RE: [Phpgroupware-users] VFS and M$ issues |
Date: |
Tue, 16 Dec 2003 19:55:52 +0000 |
I must has missread that, i thought it worked if you copied the uploaded file
to another location. I haven't experienced any corruption of MS Office docs
on any of my servers, apache 1.3.x and php 4.0.6 to 4.3.3 using IE 5.5 and 6
and all Mozilla versions.
Don Graver (dgraver) (address@hidden) wrote:
>
> Thanks Chris, but I think something is still going on with the VFS b/c
> if I take a file and put in a web accessible directory... then I can get
> it without problems. However, when I upload it via the VFS, then copy
> (cp) the file to the same web accessible directory with the same
> permissions (644) as the original file, then I can't access it. Does
> VFS actually change permissions within the file? Thanks again for all
> the help.
>
> -- Don Graver
>
>
> -----Original Message-----
> From: address@hidden
> [mailto:address@hidden
> On Behalf Of Chris Weiss
> Sent: Tuesday, December 16, 2003 6:45 PM
> To: address@hidden
> Subject: Re: [Phpgroupware-users] VFS and M$ issues
>
>
> the problem is MS's. ms office products simple do not like
> accessing an office document via a dynamic url as phpgw does.
> They want to login to the remote machine and try to get
> read/write access to the doc and can't even get read only
> because they won't carry over the session from IE or mozilla
> (people actually still use the Netscape brand?).
>
> I haven't had a a problem with pdf's so I don't know the issue there.
>
> you're not doing anything wrong, microsoft is.
>
> Don Graver (dgraver) (address@hidden) wrote:
> >
> > I am hoping somone with VFS knowledge can help me out on this
> one...or
> > M$ knowledge. First of all, I added the ability for users to attach
> > files to calendar events, so that other users can just click on the
> > attachment and the file displays/saves on their computer. Everything
> > seems to work fine with updating the phpgw_vfs table, displaying the
> > links to the files themselves, even removing them. However... When a
> > user on a Microsoft 2000 (haven't tested other versions) machine
> > clicks on the link and it tries to open an Excel file it fails with
> > the following error "Filename.xls cannot be accessed. The file may be
> > read-only or you may be trying to access a read-only
> location. Or, the
> > server document is stored on may not be responding.". If a user tries
> > to open a .pdf file he just gets an image displayed on the web
> > browser. If a user tries to open a Powerpoint file he gets
> "Powerpoint
> > cannot open the type of file represented by D:/...../Filename.ppt".
> >
> > .txt, .doc, .csv, and image files seem to work just fine with no
> > problems.
> >
> > Now, I have tested to make sure that it is not just the way I stream
> > the file to the user by copying the files directly from there source
> > (RELATIVE_ROOT) to another web accessible spot on the server
> and tried
> > accessing them that way, but get the same errors. I have
> even checked
> > to make sure that my attach_file function is not corrupting the data
> > by comparing the data string before and after to make sure they are
> > equal. To make things even more confusing, all my Linux boxes have
> > absolutely no problem opening up these files using OpenOffice...so I
> > am at a loss...and still hating M$. Anyone else ever heard
> of this or
> > seen this??
> >
> > The gory details:
> > All attached files have uog+rw permissions...with wwwrun as the owner
> > and nogroup as the group. The machine is a Suse 8.2, and running
> > mysql, with php4, and phpgw 0.9.14.512.
> >
> > Here is what I do:
> > /calendar/inc/class.bocalendar.inc.php
> >
> > $this->attach_file('calendar',$tmp_event['id'],$tmp_file);
> >
> > $tmp_file looks like this:
> > # Array:
> > Name - BCS.xls
> > Type - application/excel
> > tmp_name - /tmp/phpaGAwre
> > Size - 22528
> >
> >
> >
> > And here is my vfs->attach_file function (copied and pasted so some
> > lines have an extra ''):
> > function attach_file($app,$id,$file,$comment='')
> > {
> > if ($this->debug)
> > {
> > echo "<p>attach_file: app='$app',
> > id='$id', tmp_name='$file[tmp_name]', name='$file[name]',
> > size='$file[size]', type='$file[ty pe]', path='$file[path]',
> > ip='$file[ip]', comment='$comment'</p>n";
> > }
> > // create the root for attached files in
> > calendar, if it does not exists
> > if (!($this->vfs->file_exists(array(
> >
> 'string'=>
> > $this->vfs_basedir,
> >
> > 'relatives'=>array(RELATIVE_ROOT)))))
> > {
> > $this->vfs->override_acl = 1;
> > $this->vfs->mkdir(array(
> > 'string'=>
> > $this->vfs_basedir,
> >
> > 'relatives'=>array(RELATIVE_ROOT)));
> > $this->vfs->override_acl = 0;
> > }
> >
> > $dir=$this->vfs_path($app);
> > if (!($this->vfs->file_exists(array(
> >
> 'string'=>
> > $dir,
> >
> > 'relatives'=>array(RELATIVE_ROOT)))))
> > {
> > $this->vfs->override_acl = 1;
> > $this->vfs->mkdir(array(
> > 'string'=>
> > $dir,
> >
> > 'relatives'=>array(RELATIVE_ROOT)));
> > $this->vfs->override_acl = 0;
> > }
> > $dir=$this->vfs_path($app,$id);
> > if (!($this->vfs->file_exists(array(
> >
> 'string'=>
> > $dir,
> >
> > 'relatives'=>array(RELATIVE_ROOT)))))
> > {
> > $this->vfs->override_acl = 1;
> > $this->vfs->mkdir(array(
> > 'string'=>
> > $dir,
> >
> > 'relatives'=>array(RELATIVE_ROOT)));
> > $this->vfs->override_acl = 0;
> > }
> > $fname =
> > $this->vfs_path($app,$id,$file['name']);
> > $tfname = '';
> > if (!empty($file['path']))
> > {
> > $file['path'] =
> > str_replace('\','/',$file['path']); // vfs uses only '/'
> > @reset($this->link_pathes);
> > while ((list($valid,$trans) =
> > @each($this->link_pathes)) && !$tfname)
> > { // check case-insensitive for WIN
> > etc.
> > $check = $valid[0] == '' ||
> > strstr(':',$valid) ? 'eregi' : 'ereg';
> > $valid2 =
> > str_replace('','/',$valid);
> > //echo "<p>attach_file:
> > ereg('".$this->send_file_ips[$valid]."',
> > '$file[ip]')=".ereg($this->send_file_ips[$valid],$fil
> > e['ip'])."</p>n";
> > if
> > ($check('^('.$valid2.')(.*)$',$file['path'],$parts) &&
> >
> > ereg($this->send_file_ips[$valid],$file['ip']) && // right IP
> >
> > $this->vfs->file_exists(array(
> > 'string'=>
> > $trans.$parts[2],
> >
> > 'relatives'=>array(RELATIVE_NONE|VFS_REAL))))
> > {
> > $tfname =
> > $trans.$parts[2];
> > }
> > //echo "<p>attach_file:
> > full_fname='$file[path]', valid2='$valid2', trans='$trans',
> > check=$check, tfname='$tfname', pa rts=(x,'$','$')</p>n";
> > }
> > if ($tfname &&
> > !$this->vfs->securitycheck(array( 'string'=> $tfname)))
> > {
> > return False; //lang('Invalid
> > filename').': '.$tfname;
> > }
> > }
> > $this->vfs->override_acl = 1;
> > if ($tfname) // file is local
> > {
> >
> > $this->vfs->symlink($tfname,$fname,array(RELATIVE_NONE|VFS_REAL,RELATI
> > VE
> > _ROOT));
> > }
> > else
> > {
> > $this->vfs->cp(array( 'from'=>
> > $file['tmp_name'],
> > 'to'=>$fname,
> >
> > 'relatives'=>array(RELATIVE_NONE|VFS_REAL,RELATIVE_ROOT)));
> > }
> > $this->vfs->set_attributes (array(
> > 'string' =>
> > $fname,
> > 'relatives' => array
> > (RELATIVE_ROOT),
> > 'attributes' => array
> > ('mime_type' => $file['type'],
> > 'comment' =>
> > stripslashes ($comment),
> >
> > 'app' => $app)));
> > $this->vfs->override_acl = 0;
> >
> > $link =
> > $this->info_attached($app,$id,$file['name']);
> > return is_array($link) ? $link['file_id'] :
> > False;
> > }
> > -- Don Graver
> >
> >
> > _______________________________________________
> > Phpgroupware-users mailing list
> > address@hidden
> > http://mail.gnu.org/mailman/listinfo/phpgroupware-users
> >
>
>
>
> _______________________________________________
> Phpgroupware-users mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/phpgroupware-users
>
>
> _______________________________________________
> Phpgroupware-users mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/phpgroupware-users
>
- Re: [Phpgroupware-users] VFS and M$ issues, (continued)
RE: [Phpgroupware-users] VFS and M$ issues, Don Graver (dgraver), 2003/12/16
RE: [Phpgroupware-users] VFS and M$ issues,
Chris Weiss <=
RE: [Phpgroupware-users] VFS and M$ issues, Don Graver (dgraver), 2003/12/17
RE: [Phpgroupware-users] VFS and M$ issues, Chris Weiss, 2003/12/17
Re: [Phpgroupware-users] VFS and M$ issues, Benoit Hamet, 2003/12/18
Re: [Phpgroupware-users] VFS and M$ issues, Benoit Hamet, 2003/12/19