文章分页:
框架支持Rewrite,QueryString 和 PathInfo三种模式,虽然不建议用 rewrite 以外的模式,为了充分满足各种可能需求和情况,框架设置了如下链接转换模式:
PHP脚本模式
链接直接按照路由对应规则(即rewrite模式)设置,通过myStep类中的静态方法 setURL 转换待转换链接即可,但是每次执行仅能转换一个链接。
JS脚本模式
链接直接按照路由对应规则(即rewrite模式)设置,在页面载入最后执行JS函数 setURL() (setURL函数的规则详见JS函数章节),即可智能转换页面所有链接。
变量说明
框架提供以下几个路径参数可供使用:
- ROOT_WEB(PHP) 和 setting.path_root(JS) - 框架相对网站根目录的路径,如框架位于根,此项值为“/”;位于 dir1/dir2/ 目录,此项值为“dir1/dir2/”;
- setting.path_app(JS) - 相当于PHP下的 APP.$info_app['app'],即应用相对于框架根目录的路径,此项用于静态文件的调用;
- URL_FIX(PHP) - 域名绑定模式下的路径修正,如将应用myApp绑定值域名 myApp.domain.com ,则通过此域名访问时,此项值为“myApp”;
- myStep::$url_prefix(PHP) 和 setting.url_prefix(JS) - 为对应不同路径模式的前缀,Rewrite对应空字符串,QueryString对应"index.php?",PathInfo对应"index.php/";
- setting.url_prefix_app(JS) - 参考当前域名是否在绑定域名下,返回应用相对于网站根的路径。
所有以上 JS setting 对象可调用的参数均可以通过模版变量标签调用,如setting.path_root 对应 <!--path_root--> 标签。
示例:框架存放在 /dir 目录下,设置模式为PathInfo,路由链接为 /func/method/id,对应应用为 myApp,请求由绑定应用的域名 myApp.domain.com 发起,相关变量如下:
- setting.path_root = ‘/dir/’;
- setting.path_app = ‘/dir/app/myApp’;
- setting.app = 'myApp';
- setting.url_prefix = 'index.php/';
- setting.url_prefix_app = 'index.php/'; //如果未绑定域名则为 ‘index.php/myApp’
经过转换后的链接为:/dir/index.php/func/method/id