我正在测试一个使用TimThumb的WordPress插件。
在一台服务器(GoDaddy)上,每当我从plugins目录中请求timthumb.php文件时,我都会收到400(错误请求)错误。但是,在不同服务器上的相同请求工作正常。
/wp-content/plugins/wp-vimeo/timthumb.php
我很困惑。我可以请求同一目录中的其他文件。这可能是权限问题吗?如果是这样的话我会期待403。
答案 0 :(得分:1)
对于Windows主机,将IUSR(或您的应用程序池正在运行的任何帐户)添加到带有读/写的wp内容。
答案 1 :(得分:0)
我通过将我的网站从Window Server
移动到Linux Server
来修复此问题。仍然在godaddy。 [α]
答案 2 :(得分:0)
对我而言,这是因为我的图像需要调整大小。 如果您复制粘贴浏览器中的timthumb url并收到图像大小较大的错误。我不得不改变图像的文件大小或改变timthumb的设置来处理更大的图像。
timthumb.php文件中的这一行:
define ('MAX_FILE_SIZE', 3000000); // file size limit to prevent possible DOS attacks (roughly 3 megabytes)
答案 3 :(得分:0)
这些答案似乎没有直接解决这个问题。您可以粘贴timthumb调用中的URL。在您的浏览器中,您应该从timthumb获得诊断错误。通常是因为没有可写的缓存目录供timthumb用于制作它所服务的Image。
答案 4 :(得分:0)
在timthumb.php里面你会找到这一行:
header ($_SERVER['SERVER_PROTOCOL'] . ' 400 Bad Request');
每当出现错误时都会触发此操作:无法访问缓存,缺少必需的查询字符串变量等。我发现Google网站管理员工具和完整性等链接检查程序有时会删除查询字符串并检查根文件的有效性。当然,没有查询字符串timthumb.php将返回400错误。
为了整理这一点,我评论了以上一行。