今天尝试了一下将 anwsion 移植到新浪的sae上面,目前能保证基本的运行,当然还有一些地方需求修改和优化。
总的说来,移植sae主要是解决文件写入的问题,为了简化工作量,我采用了非主流的方式进行,即先子本地安装好anwsion,然后导出数据库,导入到sae,然后将anwsion的程序包上传到sae。根据出错信息进行修改和移植。以下是修改的地方
首先你要在sae新建一个应用,初始化数据库,memcache,storage中新建一个名字在uploads的domain。用于存储上传文件。
[]system/init.php 中的define('TEMP_PATH', dirname(dirname(__FILE__)) . '/tmp/'); 这一句修改为:define('TEMP_PATH',SAE_TMP_PATH); //临时目录修改为TMPFS[/][]关于session,anwsion使用zend 来处理的session,默认是用的文件session[/]
,由于sae不支持写,暂时修改为数据库session。需要修改system/aws_app.inc.php 我做了简单的更改,见附件
3.数据库的更改 system/config/database.php 见附件,注意$config['prefix'] = 'fd_'; //数据表前缀根据自己实际情况修改。
[]system/core/目录的cache.php captcha.php,image.php,mail.php,upload.php都要做修改,就不一一说了,都是涉及memcache和文件读写的,还有邮件支持,我都简单粗暴地修改了一下。[/][]system/zend/cache/backend 中的memcachee.php也要修改一下。就是初始化memcache,去掉addserver(sae不需要)。[/][]当把这些都做好了以后,网站首页可以正常打开了,还有个小问题。需要在数据库system_setting中的base url 修改为你sae应用的网址,upload_url 为 http://应用名-uploads.stor.sinaapp.com ;upload_dir 为 saestor://uploads[/][]可能你登陆后点击管理无法进入后台,这时注意你的url中有两个问号 及 http://网址//.....这样子。去掉其中一个/ . 然后打开,还是会多/,在去掉一次,就进入后台登陆界面了,登陆进入后,修改站点信息,参照6中的值修改,网址要有http://。这个问题就解决了。[/][]基本上就是以上的问题了,大家试试还有什么别的错误没有,咱们继续修改。[/]
阅读全文
收起全文