在CI框架中的配置整合amfphp
之前做的项目用到CI框架和amfphp的整合,主要用于php与flex的交互,在此做一下记录:
一. 安装CI框架:
1. 搭建PHP运行环境,本人在WIN7下用WAMP作测试,安装目录:d:/wamp/www
2. 下载CI框架,在官网http://codeigniter.org.cn/downloads 下载 最新版本,解压打包。
3. 将CI文件架名称修改为ciamfphp,并存在到d:/wamp/www,开通虚拟域名,
绑定HOST为: www.ciamfphp.cc,设置好之后访问此域名,如果见到CI框架的欢迎界面,说明搭建CI框架成功。
二.下载: amfPhp 1.9
网址:http://downloads.sourceforge.net/project/amfphp/amfphp/amfphp%201.9.zip
三.配置amfphp
1. 解压到 d:\wamp\www 根目录下并重命名为amfphp
2.将amfphp复制到\wamp\www\ciamfphp\application\libraries\目录下
3. 在D:\wamp\www\ciamfphp\application\libraries\amfphp下,将amfphp 文件夹中的browser文件夹剪切到D:\wamp\www\ciamfphp根目录下
4. 打开文件D:\wamp\www\ciamfphp\amfphp\application\controllers,在其下建立一个名为amf_gateway.php的控制器:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* AMFPHP网关接口
*/
class Amf_gateway extends CI_Controller
{
protected $gateway;
protected $amf_path = "libraries/"; //amf中间路径
public function __construct()
{
parent::__construct();
}
public function index()
{
/*
* ---------------------------------------------------------------
* 加载AMF框架入口文件
* ---------------------------------------------------------------
*
* 只有index 方法为amf服务入口
*
*/
require realpath(APPPATH)."/{$this->amf_path}amfphp/globals.php";
require realpath(APPPATH)."/{$this->amf_path}amfphp/core/amf/app/Gateway.php";
define('AMFSERVICES', realpath(APPPATH)."/{$this->amf_path}amfphp/services");
//调用全局验证控制器文件
require AMFSERVICES.'/Crm_Controller.php';
//实例化 网关
$this->gateway = new Gateway();
$this->gateway->setCharsetHandler("iconv", "UTF-8", "UTF-8");
$this->gateway->setLooseMode();
$this->gateway->setErrorHandling(E_ALL ^ E_NOTICE);
$this->gateway->setClassMappingsPath(AMFSERVICES.'/vo');
$this->gateway->setClassPath(AMFSERVICES);
//分析错误
if(PRODUCTION_SERVER)
{
//Disable profiling, remote tracing, and service browser
$this->gateway->disableDebug();
}
return $this->gateway->service();
}
}
/* Location: ./application/controllers/amf_gateway.php */
此时:D:\wamp\www\ciamfphp\application\libraries\amfphp\gateway.php文件多余,可以删除。
5. 修改D:\wamp\www\ciamfphp\下的.htaccess文件,允许访问browser文件夹
RewriteEngine on
RewriteCond $1 !^(index\.php|images|browser|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
四. 运行amfphp:
1. 访问 http://www.ciamfphp.cc/amf_gateway/

出现如上提示,则说明设置gateway成功。
2. 打开D:\wamp\www\ciamfphp\application\libraries\amfphp\services文件夹,建立common_controller.php,代码如下:
//主控制器
class Common_Controller extends CI_Controller
{
//other code...
}
至此,这里就可以做一系列的开发操作了。
3. 此时访问www.ciamfphp.cc/browser后,点击 “settings”图标,
设置下:Gateway location为http://www.ciamfphp.cc/amf_gateway/,点击保存就可以操作了
在CI框架中的配置整合amfphp的更多相关文章
- ci框架与smarty的整合
ci框架与smarty的整合 来源:未知 时间:2014-10-20 11:38 阅读数:108 作者:xbdadmin [导读] Ci 和 smarty 的完美结合 Ci 结合 sma ...
- CI 框架中的自定义路由规则
在 CI 框架中,一个 URL 和它对应的控制器中的类以及类中的方法是一一对应的,如: www.test.com/user/info/zhaoyingnan 其中 user 对应的就是控制器中的 us ...
- nginx location匹配顺序及CI框架的nginx配置
Nginx location匹配顺序如下: 用前缀字符串定义的location规则对URI进行匹配测试. =号定义了精确的前缀字符串匹配,如果发现精确匹配则使用当前规则.否则继续下一步匹配. 匹配其它 ...
- php CI框架中URL特殊字符处理与SQL注入隐患
php CI框架中URL特殊字符处理与SQL注入隐患 php CI框架中URL特殊字符有很多是不支持的,导致像c++,括号这些常用的分类,字符都无法正常显示很头痛,而在配置里增加单引号' 反斜杠\ 这 ...
- CI框架伪静态化配置
CI框架伪静态化配置 伪静态化,即:去掉入口的index.php, 在url后面加上 .html 后缀 CI默认的rewrite url中是类似这样的,例如你的CI根目录是在/CodeIgniter/ ...
- php json_encode在CI框架中的使用细节
这个错误的造成原因是加载类类库,转换成json格式的时候不熟悉CI框架的规定导致的,CI框架中规定在将数据转换成json格式的时候需要将类库小写,当然了,调用的时候必须保证有这个类库,且可以在对应的文 ...
- CI框架中集成CKEditor编辑器的教程
CKEditor是在很多开发过程中都会用到的一个富文本编辑器,那么如何在CI框架中使用它呢?这里介绍了在CI下使用CKEditor的方法,版本比较低,是在CI 1.7.3下使用fckeditor 2. ...
- CI 框架中的日志处理 以及 404异常处理
最近在整理项目中的日志问题,查了一些关于 “CI 框架中的日志处理 以及 404异常处理” 的东西,顺便记录一下: 关于错误日志: 1. 在CI框架中的 system/core/CodeIgniter ...
- CI框架中的奇葩
今天在win下开发,使用ci框架,本来是没有任何问题,然后转向了mac上开发,结果出现了个奇葩的问题,就是在ci框架中,控制器命名以"Admin_"为前缀的,在url中,控制器也必 ...
随机推荐
- xshell中配置linux密钥登陆
参见 http://www.aiezu.com/system/linux/xshell_ssh_public-key_login.html 配置只能秘钥登陆 http://blog.csdn.net/ ...
- bzoj1061【NOI2008】志愿者招募
1061: [Noi2008]志愿者招募 Time Limit: 20 Sec Memory Limit: 162 MB Submit: 2740 Solved: 1703 [Submit][id ...
- url删除指定字符
var str = "http://www.xxx.com/?pn=0"; // 删除指定字符 pn=0 // 我将这个字符串里所可能想到的各种情况都列举出来 var a = [ ...
- Robot Framework使用Phantomjs进行无界面UI自动化测试
Robot Framework 是一款关键字驱动的验收自动化测试框架,现在在国内使用的越来越广泛了.一种通用的Web UI自动化测试解决方案是Robot Framework+Selenium2Libr ...
- NightWatchJS(转)
关于Nightwatch? Nightwatch.js是一个测试web app和web 站点的自动化测试框架, 使用Node.js编写, 基于Selenium WebDriver API. 它是一个完 ...
- HDU 小明系列故事——师兄帮帮忙 高速幂
小明系列故事--师兄帮帮忙 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) To ...
- 删除反复行SQL举例
删除反复行SQL实验简单举例 说明:实验按顺序进行.前后存在关联性.阅读时请注意.打开文件夹更便于查看. 构造实验环境: SQL> select count(*) from emp; COU ...
- php减少损耗的方法之一 缓存对象
即把实例后的对象缓存起来(存入变量),当需要再次实例化时,先去缓存里查看是否存在.存在则返回.否则实例化.
- android WebView详细使用方法(转)
1.最全面的Android Webview详解 2.最全面总结 Android WebView与 JS 的交互方式 3.你不知道的 Android WebView 使用漏洞 如果想保证登录状态,就插入 ...
- Java线程:概念及原理
线程是执行的程序中的一个线程. Java虚拟机允许应用程序必须同时运行多个执行线程. 每个线程都有一个优先事项.具有更高优先级的线程优先于线程的优先级较低的执行.每个线程可能会或可能不会也被标记为一个 ...