[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Phpgroupware-users] VFS and M$ issues
From: |
Don Graver (dgraver) |
Subject: |
RE: [Phpgroupware-users] VFS and M$ issues |
Date: |
Tue, 16 Dec 2003 18:42:58 -0000 |
Here are the headers I send...followed by printing the file data:
header("Content-disposition: filename=".$filename);
header("Content-type: application/octetstream");
header("Cache-Control: must-revalidate,
post-check=0, pre-check=0");
header("Pragma: no-cache");
header("Expires: 0");
But, even without using these headers, and just copying the file
somewhere that the browser can see, I still get the same errors. So, I
am not sure the headers are the problem. I can download the file and
"save to disk", but the file itself seems to become corrupted along the
way...although not for the almighty OpenOffice :-)
-- Don Graver
-----Original Message-----
From: address@hidden
[mailto:address@hidden
On Behalf Of Daryl L. L. Houston
Sent: Tuesday, December 16, 2003 7:18 PM
To: address@hidden
Subject: Re: [Phpgroupware-users] VFS and M$ issues
What kind of headers are you sending? Sending "Cache-Control" and
"Pragma: no-cache" headers can cause problems with downloading in MSIE.
Check out
https://www.redhat.com/support/resources/faqs/stronghold3/browse
r_faq.html
for more info.
D
Don Graver (dgraver) 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
>
>
_______________________________________________
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) <=
RE: [Phpgroupware-users] VFS and M$ issues, Chris Weiss, 2003/12/16
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