无线开放 API

php应用配置详解

现在本地SDK界面已经实现界面化app.yml文件的配置,也建议开发者用SDK界面进行配置,参考文档:本地开发环境搭建。如果需要手动配置,参考以下文档:
PHP应用目录必须有应用配置文件 app.yml,修改配置文件需要重启SDK。配置文件要以GBK或UTF-8编码,第一行配置命名空间,请不要随意修改。
!!com.taobao.tae.config.domain.Config

1、应用名设置 [可选]

title: 你自己的App名称

2、文件编码设置 [可选]

fileEncoding: utf-8
可以指定编码格式为GBK;未配置文件编码格式时,系统会已默认语言来读取文件;系统PHP默认语言GBK,JAVA默认语言utf-8。 建议大家统一使用 utf-8。
fileEncoding: utf-8 冒号后有一个空格。

3、请求的request和response编码设置 [可选]

requestCharset: utf-8 #指定请求的编码字符集

responseCharset: utf-8 #指定响应的编码字符集

没有设置时这两个参数默认取fileEncoding的值。

4、全局CSS配置 [可选]

css: /assets/stylesheets/bootstrap.css
这里配置全局css,所有页面都会默认引入此css文件。路径从应用目录开始,必须以“/”开头。

5、全局JavaScript配置 [可选]

js: /assets/javascripts/imgservice.js
这里配置全局js,所有页面都会默认引入此js文件。路径从应用目录开始,必须以“/”开头。

6、首页 [可选]

index: /view/front/index.php
通过域名直接访问的页面如test.uz.taobao.com访问时的页面。

7、首页缓存开启与关闭 [可选]

disableIndexCache: true
默认首页缓存处于开启状态,缓存时间为5分钟;当设置此属性为true时,首页缓存处于关闭状态。

8、url短域名 [可选]

urls:

- {handler: /view/front/view.php, url: /view}

- {handler: /view/front/report.php, url: /report}

访问短域名时必须添加前缀 /d ,标识此域名为短域名。例如:这里配置表示view.php和report.php两个文件被设置了短域名,访问http://localhost/d/view,即相当于访问http://localhost/view/front/view.php .

9、远程服务请求 [可选]

services:

- {serviceName: hsfservice ,handler: /services/hsf/hsfservice.php }

- {serviceName: appservice ,handler: /services/hsf/appservice.php }

当我们有多个应用App希望相互调用时,可以使用此方式进行通信,类似于RPC调用。这些应用的开发者ID必须相同,配置对应conf/custom/ace4j-private.properties中的app.owner.id

10、页面或目录的权限配置 [可选]

security:

- {url: /security/visitlimit/anonymous,role: anonymous }

- {url: /security/visitlimit/developer,role: developer }

- {url: /security/visitlimit/shopcustomer,role: shopcustomer }

页面权限类型有三种:anonymous,shopcustomer,developer; anonymous 表示任何人据可以访问此路径或文件,shopcustomer 表示只有用户登录后才能访问此路径或文件(多应用于卖家后台) developer 表示只有站点开发者本人在能访问的页面(多用作开发者后台管理)。
一个页面如果同时配置了多个权限点,则后面的那个起作用。比如 目录/a 为shopcustomer,文件/a/b.php 配置了developer权限,则b.php的权限点为developer。

11、UrlRewrite 配置

例子:注意第二行要有2个空格

urlRewriteRule: |

  RewriteRule ^(.*)$ /index.php$1 [QSA,L]

Tae UrlRewrite基于Tomcat8的rewrite valve实现,其语法跟Apache的rewrite模块一致,只是不需要“RewriteEngine On”这一标志。通过Web控制台配置rewrite规则会有自动语法检测。

UrlRewrite包括重写规则(RewriteRule)和重写条件(RewriteConf)。

RewriteRule格式:

RewriteRule Pattern Substitution [flags]

RewriteRule描述如何去重写,Pattern和Substitution使用正则表达式来匹配相应的字符。容器从上到下的顺序执行重写的规则,如果 URL 匹配了第一条规则,则按照第一条规则进行重写,如果不匹配,就执行第二条规则,直到最后。

RewriteCond的格式:

RewriteCond TestString CondPattern [flags]

RewriteCond定义一条规则条件。在一条RewriteRule指令前面可能会有一条或多条RewriteCond指令,只有当自身的模板(pattern)匹配成功且这些条件也满足时规则才被应用于当前URL处理。

其他细节可参考:

http://httpd.apache.org/docs/2.4/rewrite/intro.html

http://tomcat.apache.org/tomcat-8.0-doc/rewrite.html

http://www.cnblogs.com/scgw/archive/2011/05/01/2033730.html

12、session失效时间设置

例如:

sessionTimeout: 10

单位为秒(s)。

13、Smarty模板引擎自定义起始符

例子:

smartyLeftDelimiter: <{

smartyRightDelimiter: }>

Smarty默认起始符是“{”和“}”,可能会跟一些js模板冲突,此时可以通过此配置修改。

14、yml配置的注释

配置注释方法,在开头添加一个 # 。