问题描述

Web 服务器使用的是 IIS+PHP+WordPress 。
从 WordPress 网页上传图片,无法访问原始尺寸。例如 www.xxx.com/wp-content/uploads/1.jpg 无法访问,但是 www.xxx.com/wp-content/uploads/1-100x100.jpg 却可以访问。

查看服务端文件系统,原尺寸图片与裁剪图片处在同一文件夹(uploads)下,但文件夹安全组权限与原尺寸图片的安全组权限不一致,裁剪的图片与文件夹权限一致。

解决方案

修改 PHP 缓存目录(默认 C:\Windows\Temp)的权限,给予 IIS 用户修改权限。

分析

PHP 图片上传过程:先将图片放到缓存目录下,默认情况是 C:\Windows\Temp,然后再转移到 uploads 文件夹里,此时图片的权限会继承 Temp 文件夹的权限。裁剪图片是 WordPress 直接生成到 uploads 文件夹里的,所以权限继承的是 uploads 文件夹。

PHP 的缓存目录路径在 php.ini 配置文件中找。

订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论