zoukankan      html  css  js  c++  java
  • PHP ON 阿里云的环境配置攻略

           整体介绍:
     
      Aliyun Cloud Engine (以下简称ACE)提供基于PHP 5.3.5的运行环境(Runtime Environment),支持标准的关系型数据库、Memcache、Cron、Session、storage,同时增加一些高级特性来满足开发者的需求。ACE选择PHP作为首选支持语言,主要是因为目前国内的开发者以使用PHP语言的比重最大,未来会考虑支持持Node.js,ASP.net,Python和Java等。
     
      ACE的PHP Runtime和官方标准PHP环境几乎完全一样,99%的代码可以不加任何修改完美的运行在ACE环境中。ACE出于安全和性能的考虑,对标准PHP进行了一些扩展和改进。ACE的PHP会随着官方的版本升级而升级,当官方版本升级时,我们会评估其重要程度,并根据ACE自身特点合并到我们的Runtime中。
     
      限制:
     
      ACE平台为保证应用安全性和稳定性,对各类服务设定了一些限制和配额,用户在使用前应当仔细阅读,避免使用中出现问题:
      
           1.资源限制
               memory_limit : 脚本可分配的内存 默认:32M
               post_max_size: post数据大小 默认:10M
               upload_max_filesize 上传文件大小 默认:4M
      
           2.禁用函数
      出于安全性的考虑,ACE禁用了一些php函数,禁用的标准主要有四点::
              1) 出于对安全性的考虑
              2)出于对资源管理的考虑
              3) 不常用的API
              4) 我们提供更好替代方案的API
              详细的限制列表请参考:安全禁用函数列表
      
           3.解决方法
      安全禁用函数的具体影响以及解决方法:
     
              1) 文件缓存
              CE本地文件读写受限制,虽然通过上面的文件读写同步可以实现,但是考虑到效率问题,建议在文件缓存上面再部署一层全文memcache缓存结构。
              2) Memcache缓存
              //连接
              $mem = new Memcache(); //创建memcache对象(比如昆明男科医院),内部会访问agent获取地址及ID
              $mem->init();
              //保存数据
              $mem->set('key1', 'This is first value', 0, 60);
              $val = $mem->get('key1');
              //替换数据
              $mem->replace('key1', 'This is replace value', 0, 60);
              $val = $mem->get('key1');
              //保存数组
              $arr = array('aaa', 'bbb', 'ccc', 'ddd');
              $mem->set('key2', $arr, 0, 60);
              $val2 = $mem->get('key2');
              //删除数据
              $mem->delete('key1');
              $val = $mem->get('key1');
              //关闭连接
              $mem->close();
              ?>
     
              3) 存储服务
      由于不能直接写本地文件,move_uploaded_file 方法已不能正常使用,改用ACE提供方法支持
              move_uploaded_file($tmp_name, $filename)
      替换为:
              $ce = new CEStorage();
              $result = $ce->upload($tmp_name, $filename);
              #$rs1 = $ce->errmsg(); 输出错误信息
              #$rs2 = $ce->errno();
              $result 为返回的附件文件路径,形如: www.domain.com/ACE_bucket/$filename
      该路径可直接访问。
  • 相关阅读:
    五大主流浏览器 CSS3 和 HTML5 兼容性大比拼
    httpservice 公共类
    Eclipse自动生成注释
    天生一对"Maven2+Jetty" Maven2创建并管理WebApp,并使用Maven Jetty Plugin在Eclipse中调试
    jsp checkbox不错的应用
    我们需要改变
    Sortable Table 可排序表格JS收集
    Eclipse快捷键大全()
    Ajax简单应用
    css 固定table表头
  • 原文地址:https://www.cnblogs.com/hengyi123/p/3758411.html
Copyright © 2011-2022 走看看