ThinkPHP的目录结构
经过几次调整和优化,ThinkPHP的目录结构已经变得非常清晰和容易部署。大致的目录结构如下:
┎━ThinkPHP 框架系统目录
┃ ┝ Common 公共文件目录
┃ ┝ Lang 系统语言包目录
┃ ┝ PlugIns 公共插件目录
┃ ┗ Lib 应用类库目录
┃ ┝ Think 系统运行库目录(必须)
┃ ┗ ORG 扩展ORG类库包(非必须)
┃
┝━Admin 示例项目
┃ ┝ Cache 模版缓存目录
┃ ┝ Common 公共文件目录
┃ ┝ Conf 项目配置目录
┃ ┝ Html 静态文件目录
┃ ┝ Lib 应用类库目录
┃ ┝ PlugIns 项目插件目录
┃ ┝ Tpl 模版文件目录
┃ ┝ Lang 语言包目录
┃ ┝ Logs 日志文件目录
┃ ┝ Temp 数据缓存目录
┃ ┗ Uploads 上传文件目录
┃
┃…更多项目目录(和Admin目录类似)
┃
┝━Public 网站公共目录
┃ ┝ Js JS类库目录(建议)
┃ ┝ Images 公共图像目录(建议)
┃ ┗ Uploads 公共上传目录(建议)
其中ThinkPHP系统目录和Admin目录都可以部署在非WEB目录下面,在WEB目录下面可以仅仅放置项目入口文件和网站公共目录(如Public目录),关于项目入口文件的定义后面会仔细讲述。
如果在类Linux环境下面部署,需要对以下目录设置可写权限(这些目录仅仅针对项目目录,系统目录无需设置任何可写权限,因为每个项目的模版缓存和数据缓存,以及日志文件都是独立的):
项目目录下面的Cache(模版缓存目录)、Temp(数据缓存目录)、Conf(项目配置目录,写入权限用于自动生成配置缓存和插件缓存文件)、Logs(日志文件目录)、如果设置了Uploads作为上传目录的话该目录也必须设置为可写,如果需要在后台管理中在线编辑模版文件,那么需要设置Tpl目录的可写权限。
另外,如果设置了Public目录下面的Uploads目录作为公共上传目录,也需要设置可写权限。通常的设置都是设置目录属性为777。