使用typecho上传附件时,插入远程图片是没问题的,但本地图片会报上传失败。网上找了许多方法,最后得到了解决。原文地址
解决办法:
下面会介绍两个办法,建议是两个都进行更改,才能确保万无一失。
1. 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.做了上面一步发现还不行。
把typecho里的usr/
目录权限修改为777,就可以了。注意chmod要递归。
进入博客目录
sudo chmod -R 777 usr
然后可以上传本地图片了。
3 条评论
感谢,改过权限,确实可以上传了
博主你遇到过,用编辑器自带的上传图片可以打开图片,但是用typecho自带的附件上传后,能返回地址,但是实际图片没有存在服务器后台,这是咋回事!除了图片都可以通过附件传进去....
感谢博主,确实解决了我的问题,赞一个!