开发者

PHP Not Able to Find File Even Though It Exists

Everyone.

I am using an image resizer script that resizes JPG images. It worked fine on my remote server but unfortunately it doesn't work on the client's server. :-|

The directories are writable (permission is set to 777). All I am getting is:

Error: image does not exist: /home/content/u/s/e/username/correct/path/to/existing/file.jpg

Here's the bit of the code that may be helpful in debugging:

// Images must be local files, so for convenience we strip the domain if it's there
$image          = preg_replace('/^(s?f|ht)tps?:\/\/[^\/]+/i', '', (string) $_GET['image']);
// ...
// Strip the possible trailing slash off the document root
$docRoot 开发者_如何转开发   = preg_replace('/\/$/', '', DOCUMENT_ROOT);
//...
if (!file_exists($docRoot . $image))
{
    header('HTTP/1.1 404 Not Found');
    echo 'Error: image does not exist: ' . $docRoot . $image;
    exit();
}

Please note that as a developer I have been given permission to access a subdirectory of the root directory.

I hope I made the problem case clear. I am at a loss as to what's going on behind the scene. Help is much apreciated


PHP has to have access to all the directories leading up to the file, not just access to the file itself. If it doesn't have permissons on ALL of the directories, it's the equvialent of putting a "Free! take one!" pamphlet dispenser inside a vault inside Fort Knox - useless.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜