2010-04-26 76 views

回答

0

好笑的是,我刚搬到我的Drupal到另一个文件夹,这是工作。也许我没有解释我的问题非常好..

+2

帕特里克 - 这正是我在评论我的答案时所说的。请不要把其他人的信息,并把它成为你自己的,*接受*答案。谢谢! – 2010-05-21 05:33:28

3

< 编辑 >如果你想改变它在数据库中(为什么?),你可以通过在variable表改变file_directory_path值做到这一点:

UPDATE variable SET file_directory_path = 's:5:"files";'; 

值在variable表存储为serialized php variables。上例中的序列化值表示file_directory_path是长度为5的字符串(s),其值为files。你必须适应你的具体价值。

还指出,Drupal变量被缓存(在cache表中,在cidvariables下)。为使数据库中的更改生效,必须清除该缓存,如DELETE FROM cache WHERE cid = 'variables';。 </编辑 >

如果你指的是File system path:它在辖>站点配置>文件系统,或http://yourdrupalsite.com/index.php?q=admin/settings/file-system

+0

是的,我的意思是文件系统路径,但我的意思是改变它在数据库中,不使用Drupal的 – aneuryzm 2010-04-26 11:33:21

+0

看到我更新的答案。 – 2010-04-27 14:50:14

+0

对不起,我猜这是我的误解。在Drupal数据库中,只有相对路径(从Drupal根文件夹开始),而不是绝对路径(即/ web/Drupal),指定Drupal的安装位置,对吗?这就是我的意思 – aneuryzm 2010-04-28 06:26:57

0

有趣的是,昨天我只需要这样做。

因为我有phpmyadmin可用于我,我用它导出文件表,然后执行一些搜索/替换例程,然后导入表,覆盖数据。

但是如果我没有phpMyAdmin的帮助,我就已经创建了一个SQL查询,以取代过时的路径...

+0

嗨!我认为服务器上drupal安装的主要位置只存储一次。 (然后所有的相对路径(即网站/文件...)重复了很多次,但我不需要改变它们。 – aneuryzm 2010-04-26 23:27:43

1

你也可以做到以下几点:

//Get the path of the files folder (ex. sites/default/files) 
$files_dir = variable_get('file_directory_path', ''); 

//To set a new path programmatically 
variable_set('file_directory_path', 'sites/new-path/files');