使用typecho上传附件时,插入远程图片是没问题的,但本地图片会报上传失败。网上找了许多方法,最后得到了解决。原文地址
解决办法:
下面会介绍两个办法,建议是两个都进行更改,才能确保万无一失。
- Typecho会对服务器进行监测,如果不在BAE、SAE、ACE下,则不允许文件上传。事实上,可以去掉这一段监测代码。我的服务器是在腾讯云租用的云服务器。
打开/var/Typecho/Common.php,将下列代码进行修改:
原代码
public static function isAppEngine()
{
return !empty($_SERVER['HTTP_APPNAME']) // SAE
|| !!getenv('HTTP_BAE_ENV_APPID') // BAE
|| !!getenv('SERVER_SOFTWARE') // BAE 3.0
|| (ini_get('acl.app_id') && class_exists('Alibaba')) // ACE
|| (isset($_SERVER['SERVER_SOFTWARE']) && strpos($_SERVER['SERVER_SOFTWARE'],'Google App Engine') !== false) // GAE;
}
修改为
public static function isAppEngine()
{
return false;
}
2.做了上面一步发现还不行。
找到usr/uploads这个文件夹,修改777权限,linux和Windows系统修改的方法不同,但网上都有很多介绍:Windows下网站目录777可读写权限设置方法 然后重启服务器,上传附件成功。
sudo chmod -R 777 uploads
然后可以上传本地图片了。
评论已关闭