您的位置首页百科知识

WordPress中uploads目录替换为SAE的Storage方法

WordPress中uploads目录替换为SAE的Storage方法

的有关信息介绍如下:

WordPress中uploads目录替换为SAE的Storage方法

sae每个应用代码只能用100M的空间,所以把wordpress中的uploads上传目录替换到Storage上去,上传的图片就可以直接保存到Storage中,Storage中有10G的空间可以用。

在Storage中建好一个叫wordpress的domain

在SAE上创建应用,安装WordPress for SAE版本的时候会提示要先在Storage中建个wordpress的domain。

在应用的根目录,创建sae.php文件

1).先用svn的工具TortoiseSVN把应用的代码全部checkout到本地。

2).在应用的根目录,创建sae.php文件

代码如下:

/* 在SAE的Storage中新建的Domain名,比如“wordpress”*/

define('SAE_STORAGE',wordpress);

/* 设置文件上传的路径和文件路径的URL,不要更改 */

define('SAE_DIR', 'saestor://'.SAE_STORAGE.'/uploads');

define('SAE_URL', 'http://'.$_SERVER['HTTP_APPNAME'].'-'.SAE_STORAGE.'.stor.sinaapp.com/uploads');

?>

修改wp-includes/functions.php文件

1).require( ABSPATH . WPINC . '/option.php' );

前添加一行:

include( ABSPATH . '/sae.php' ); //调用SAE的Storage文件域名设置 //for SAE

2).注释掉如下代码,

3).$basedir = $dir;

的上面添加如下代码:

// for SAE begin

$dir = SAE_DIR;

$url = SAE_URL;

//for SAE end

4)./** * Send a HTTP header to limit rendering of pages to same origin iframes.

的上面添加如下代码:

// for SAE begin

if ( !function_exists('utf8_encode') ) {

function utf8_encode($str) {

$encoding_in = mb_detect_encoding($str);

return mb_convert_encoding($str, 'UTF-8', $encoding_in);

}

}

//for SAE end

修改wp-admin/includes/file.php文件

注释掉如下代码:

// Set correct file permissions

//$stat = stat( dirname( $new_file ));

//$perms = $stat['mode'] & 0000666;

//@ chmod( $new_file, $perms );

提交代码

全部完成后,在应用目录上右键,选择“SVN Commit...”,填写相应的描述信息,把这些文件修改的文件勾都打上,提交。

提交完成后,在网站后台的媒体库上可以上传一张图片测试,会成功上传到Storage的wordpress中。而且可以看到图片的完整链接地址。

当然你可以直接在Storage里面上传,不过因为博客搬家需要上传的多,就用了Cyberduck的软件工具。

Storage wordpress下面的uploads目录下如图: