2012-07-10 13:46



I'm using apache2 webserver and I have installed mod_xsendfile I have something like:

                header('Content-type: application/zip');
                header('Content-Disposition: attachment; filename=""');
                //header("X-Accel-Redirect: /file/protected/"); //for nginx server
                header('X-Sendfile: /protected/');

I enabled in /etc/apache2/apache2.conf:

XSendFile on

When I click on Download button in /file/index.php it gives me error, index.php that is located in /file/ Not Found

I tried moving header('X-Sendfile: /file/protected/'); at the first place but it's the same..

When I use header("X-Accel-Redirect: /file/protected/"); It works but gives me empty .zip file, anyway its for not apache2 server..

File has only few KB

Anyone know how to fix it ?

EDIT: It says in error.log: The given path was above the root path: xsendfile: unable to find file: /protected/

I set XSendFilePath /protected and the erro now is: (2)No such a file or directory: xsendfile cannot open file: /protected/,referer:

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答


  • doutuan8887 doutuan8887 9年前

    Look up the mod xsendfile documentation. You have to set the directories that its allowed to serve files from. If you've done that, then I would suspect some other issue, such as symlinks not being served, etc....

    点赞 评论 复制链接分享