Aug
21
今天应怪怪要求在学院服务器上安装一个WordPress,作为军训专题站。由于域名不能自由控制,所以只能在站点下建子目录来挂更多的应用。但是由于不想在根目录下放过多的目录(PHPCMS已经安装在根目录,所以文件繁多),因此选择了在其他目录通过虚拟目录的挂载方式实现子目录。
这样就出现了问题,由于虚拟目录所指向的路径存在中文路径,即:“D:网站目录军训专题”,下载好Wordpress 2.8.4,解压,然后浏览器中访问,进入了著名的5分钟安装界面,填写完数据库信息,进入第二步。
出错的地方到了,就是在第二步插入数据时报错了,页面上会提示类似于以下内容的错误信息(省略了大部分信息,重点突出关键行):
WordPress database error: [Incorrect string value: 'xCDxF8xD5xBExB9xA6...' for column 'option_value' at row 58]
INSERT INTO wp_options (option_name, option_value, autoload) VALUES ('siteurl', 'http://*.edu.cn/jx2009', 'yes'), ('blogname', 'My Blog', 'yes'),
...........................................
('upload_path', 'D:\��վ����\��ѵ����/wp-content/uploads', 'yes'),
...........................................
我们可以看到upload_path这一项的值中间含有“�վ”这样的乱码(可能乱码形式不一样,总之是乱码),这个应该是PHP的问题,也总就是那utf-8和gb2312之间的事情了。当务之急不去研究那些编码问题,而是找到简便的解决方法。经过观察,其实WordPress的upload_path字段并不需要储存完整的路径,后台可以将这个路径直接设置为“wp-content/uploads”,那么在安装时候我们也可以直接把上传保存路径设置为这个,不需要读取完整的绝对路径了。
具体解决方法:找到wp-admin/includes/schema.php,第188行
//$upload_path = WP_CONTENT_DIR . '/uploads'; //这一样我把他注释掉 $upload_path = 'wp-content/uploads'; //直接给upload_path重新赋值,指定为这个路径。
保存文件后,清空数据库,重新进行安装,错误不再出现,一切正常。后台测试上传图片,正常!问题成功解决。
欢迎转载,务必请记得保留出处,否则就如看帖不回帖一样,是不道德的!
本文地址:http://www.steveluo.name/chinese-path-install-wordpress-error/
本文地址:http://www.steveluo.name/chinese-path-install-wordpress-error/
您可能还对这些文章感兴趣:
1 Comment
Make A CommentComments RSS Feed TrackBack URL
September 23rd, 2009 at 8:01 pm
不知道你在写什么
但是一定要顶一下的!!!
[Reply]