关于wordpress升级后,上传图片报错,或者是迁移空间后不显示图片的问题

关于wordpress升级后,上传图片报错,或者是迁移空间后不显示图片的问题

2009-12-23 / 2 评论 / 2,469 阅读 / 正在检测是否收录...

显示图片或者上传图片时候报类似错:Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/var/www/wp-content/uploads/2009/02) is not within the allowed path(s): (/www/users/:/tmp/) in /www/users/yoozhu.com/wp-includes/functions.php on line 1737

Warning: is_dir() [function.is-dir]: open_basedir restriction in effect. File(/var/www/wp-content/uploads/2009) is not within the allowed path(s): (/www/users/:/tmp/) in /www/users/yoozhu.com/wp-includes/functions.php on line 1746

网上有两种解释:

1、参考:http://www.parallels.com.cn/support.php?x=&mod_id=2&root=74&id=549

客户站点的php脚本访问/www/users,/tmp之外的目录会报类似下面权限不足的错误:

Warning: file() [function.file]: open_basedir restriction in effect. File(/www/weboss/eSite/license.dat) is not within the allowed path(s): (/www/users/:/tmp/) in /www/users/site.hyld.net/file.php on line 2
Warning: file(/www/weboss/eSite/license.dat) [function.file]: failed to open stream: Operation not permitted in /www/users/site.hyld.net/file.php on line 2

解决方案

打开/usr/local/php4/etc/php.ini以及/usr/local/php5/etc/php.ini
找到open_basedir选项,在其后面添加所允许访问的目录,目录之间以’:'分割,例如:
open_basedir=/www/users/:/tmp/:/www/weboss/

问题产生的原因:
在prima linux 3.5.3 sp1之后,为了加强prima系统的安全性,默认设置
open_basedir=/www/users/:/tmp/
这样能够防止脚本访问open_basedir之外的目录。

但有的系统要求某些文件必须放在特定的目录,这时就需要prima系统管理员手动做上述修改。

2、打开数据库 找到wp_option表,option_id=59  upload_path修改值为/var/www/vhosts/hatoyu.com/httpdocs/wp-content/uploads,马上解决问题,并且那个在 ssl下报错的flash上传方式也解决了。其实 很多你找不到的wp的config都在这个表里面,不要害怕放心大胆的改吧。

步骤一:找到数据表wp_option,打开

步骤二:选择搜索option_id为59(此值根据具体情况而定,只要找到option_name中为upload_path

 

步骤三:编辑option_id=59表,将其中的option_nameupload_path值更改为你的图片附件路径

注意:WordPress 2.9的值是:option_id=59,其他较低版本是60.

需要更改的是就是在wp_options表里的option_name的upload_path 更改对的路径即可。

0

评论

博主关闭了所有页面的评论