当前位置:首页 > PHP教程 > php环境安装 > 列表

SAE 上安装 Wecenter 错误问题处理

发布:smiling 来源: PHP粉丝网  添加日期:2016-08-25 14:05:10 浏览: 评论:0 

下面我们一起来看一篇关于SAE 上安装 Wecenter 错误问题处理例子,希望这篇文章能够帮助到各位朋友.

今天其实想搭建个社区,专门为 Zephir/Phalcon/Yaf/Docker/Swoole 建设一个社区,专门为 C 语言的PHP框架和 C 语言扩展做一个,刚开始挺高兴的,直接用 wecenter 搭建多好,而且官网说支持 SAE,我就信心满满的去了,结果不行,坑爹呀,新浪那么大字,mysql 不支持 host:port 没看吗?稍微修改一下就可以了.

0x01

修改 system\Zend\Db\Adapter\Mysqli.php,搜索找到 // Suppress connection warnings here.,然后在上边加入以下代码:

  1. //修复SAE上连接错误 BUG add by widuu 2015/4/23 
  2.   if (defined('IN_SAE')){ 
  3.       $host = $this->_config['host']; 
  4.       $this->_config['host'] = strstr($host,':',true); 
  5.       $port = trim(strstr($host,':'),':'); 
  6.   } 
  7.   // end by widuu 

修改 system\Zend\Db\Adapter\Pdo\Abstract.php,搜索一下代码:

return $this->_pdoType . ':' . implode(';', $dsn);

然后替换成如下这样:

  1. //修复SAE上连接错误 BUG add by widuu 2015/4/23 
  2. if (defined('IN_SAE')){ 
  3.      $host = $dsn['host']; 
  4.      $dsn['host'] = strstr($host,':',true); 
  5.      $dsn['port'] = 'port='.trim(strstr($host,':'),':'); 
  6. }  //phpfensi.com 
  7. // end by widuu 
  8. return $this->_pdoType . ':' . implode(';'$dsn); 

0x02

伪静态不管用,大哥你知道吗,最好看看官方的 API,然后伪静态变成如下就可以了:

name:你的应用名称

version:你的版本

handle:

- rewrite: if (!-d && !-f) goto "/index.php?%{QUERY_STRING}"

好就到这里,明天预告,更新 Phalcon 的东西,我也想更新 YAF 的知识,当然一个一个慢慢来,然后是 Zephir.

Tags: Wecenter SAE错误问题

分享到: