真实项目的部署
(1)项目要区分前台和后台(控制器,视图层)
(2)我们要将浏览器能够直接访问的文件(js,images,css)统一的放到一个目录里面(Pulblic),然后将不能被浏览器直接访问的文件,放到另一个目录(App)
通常情况下,浏览器能够直接访问的文件,放到 public目录里
不能被浏览器直接访问文件放到 private App(保存项目的应用文件)
将我们现在的项目按照这种思想分组
(1)先将项目分为公共部分和私有的部分
如何将TP自动生成的MVC的结构保存到App目录里面,因为按照项目的部署思想,公共的文件(js,images,css)应该放到 Pulic目录,而项目的核心代码应该放到 App目录
是通过在入口文件,增加一个常量 APP_PATH
define('APP_PATH','APP/');
define('APP_DEBUG',true);//调试模式,不产生缓存
调试模式和部署模式(生产模式)
调试模式:如果修改了数据表的数据,或者是修改了配置文件,需要将缓存删除,开启调试模式 ,不生成缓存文件 APP_DEBUG =》 true
(为了方便调试错误,关闭缓存, APP_DEBUG =》 true)
部署模式:真正上线了,我们很少再会修改数据表的结构或者是配置文件,这个时候,我们会将调试模式关闭 APP_DEBUG => FALSE,生成缓存文件
(上线之后,开启缓存 APP_DEBUG => FALSE)
(2)将项目分成前台和后台(控制器,视图)
通过修改配置文件,增加两个配置项:“
APP_GROUP_LIST => "Admin,Home";
DEFAULT_GROUP=>"Home";
访问的时候,要
入口文件/分组/控制器/动作
规范的项目部署完成
在视图层的模板里面给我们们封装了一些伪常量(),保存的是一些路径
__PUBLIC__:会被替换成当前网站的公共目录常是/Public/
__ROOT__:会被替换成当前网站的地址(不含域名)
__APP__:会替换成当前项目的URL地址(不含域名)
__GROUP__:会替换成当前分组的URL的地址(不含域名)
__URL__:会替换成当前模块的URL地址(不含域名)
__ACTION__:会替换成当前操作的URL地址(不含域名)
__SELF__:会替换成当前的页面URL