目录结构
本章节主要是介绍,ShopWind源代码的目录结构,以及每个目录代表的含义,便于开发者从整体上把握如何更好的进行程序拓展开发
一、ShopWind 3.x程序目录结构

├─shopwind------------------------------------------应用目录
│  ├─apiserver-------------------------------------API接口服务模块
│  │  ├─config------------------------------------配置文件
│  │  ├─controllers-------------------------------模块控制器
│  │  ├─languages---------------------------------语言包
│  │  ├─library-----------------------------------模块类库
│  │  │  ├─Formatter.php--------------------------数据格式化类
│  │  │  ├─Respond.php----------------------------数据输入输出类
│  │  │  └─Signature.php--------------------------数据验证签名类
│  │  ├─models------------------------------------业务层
│  │  ├─runtime-----------------------------------应用运行缓存文件
│  │  └─web---------------------------------------Web部署目录(对外访问目录)
│  │      └─index.php------------------------------API入口文件
│  ├─backend---------------------------------------后台模块
│  │  ├─config------------------------------------配置文件
│  │  ├─controllers-------------------------------模块控制器
│  │  ├─languages---------------------------------语言包
│  │  ├─library-----------------------------------模块类库
│  │  ├─models------------------------------------业务层
│  │  ├─runtime-----------------------------------应用运行缓存文件
│  │  ├─views-------------------------------------模板(视图)文件目录
│  │  └─web---------------------------------------Web部署目录(对外访问目录)
│  │      └─.htaccess------------------------------伪静态文件
│  │      └─404.html-------------------------------404错误跳转
│  │      └─favicon.ico----------------------------后台图标标识
│  │      └─nginx.htaccess-------------------------nginx服务器静态文件
│  │      └─index.php------------------------------后台入口文件
│  ├─common----------------------------------------公共文件目录
│  │  ├─actions-----------------------------------公共动作目录
│  │  ├─bussiness---------------------------------业务逻辑层
│  │  ├─components--------------------------------公共组件类库
│  │  ├─config------------------------------------全局配置文件
│  │  ├─controllers-------------------------------控制器父类
│  │  ├─install-----------------------------------安装程序类
│  │  ├─library-----------------------------------公共逻辑层
│  │  ├─mail--------------------------------------邮件发送类
│  │  ├─models------------------------------------数据库模型类
│  │  ├─plugins-----------------------------------公共插件类库
│  │  │  ├─connect-------------------------------第三方登录插件目录
│  │  │  │  ├─qq--------------------------------qq登录插件
│  │  │  │  ├─alipay----------------------------支付宝登录插件
│  │  │  │  ├─weixin----------------------------微信登录插件
│  │  │  │  └─xwb-------------------------------新浪微博登录插件
│  │  │  ├─express-------------------------------快递跟踪插件目录
│  │  │  ├─oss-----------------------------------对象存储插件目录
│  │  │  ├─payment-------------------------------支付插件目录
│  │  │  │  ├─alipay----------------------------支付宝PC支付插件
│  │  │  │  ├─alipay_app------------------------支付宝APP支付插件
│  │  │  │  ├─alipay_wap------------------------支付宝手机支付插件
│  │  │  │  ├─wxpay-----------------------------微信公众号支付插件
│  │  │  │  ├─wxapppay--------------------------微信APP支付插件
│  │  │  │  ├─wxnativepay-----------------------微信扫码支付插件
│  │  │  │  ├─wxmppay---------------------------微信小程序支付插件
│  │  │  │  ├─wxh5pay---------------------------微信H5端支付插件
│  │  │  │  ├─unionpay--------------------------中国银联支付插件
│  │  │  │  └─deposit---------------------------站内余额支付插件
│  │  │  ├─sms-----------------------------------短信插件目录
│  │  │  └─BasePlugin.php-------------------------插件基类 
│  │  └─widgets-----------------------------------小部件类库
│  ├─console---------------------------------------控制台目录
│  │  ├─config------------------------------------配置文件
│  │  └─controllers-------------------------------模块控制器
│  ├─frontend--------------------------------------前台(PC)模块
│  │  ├─config------------------------------------配置文件
│  │  ├─controllers-------------------------------模块控制器
│  │  ├─languages---------------------------------语言包
│  │  ├─library-----------------------------------模块类库
│  │  ├─models------------------------------------业务层
│  │  ├─resource----------------------------------资源目录
│  │  ├─runtime-----------------------------------应用运行缓存文件
│  │  ├─widgets-----------------------------------PC端小挂件目录
│  │  ├─views-------------------------------------模板(视图)文件目录
│  │  └─web---------------------------------------Web部署目录(对外访问目录)
│  │      └─admin---------------------------------后台索引目录
│  │      └─assets--------------------------------静态资源发布目录
│  │      └─data----------------------------------配置文件及资源上传目录
│  │      └─install-------------------------------程序安装目录(入口)
│  │      └─mobile--------------------------------移动端配置索引目录
│  │      └─static--------------------------------静态资源目录
│  │      └─index.php------------------------------前台(PC)入口文件
│  ├─mobile----------------------------------------前台H5/WAP模块
│  │  ├─config------------------------------------配置文件
│  │  ├─controllers-------------------------------模块控制器
│  │  ├─languages---------------------------------语言包
│  │  ├─runtime-----------------------------------应用运行缓存文件
│  │  ├─views-------------------------------------模板(视图)文件目录
│  │  ├─widgets-----------------------------------H5端小挂件目录
│  │  └─web---------------------------------------Web部署目录(对外访问目录)
│  │      └─data----------------------------------移动端配置文件及资源上传目录
├─composer.json--------------------------------------Composer配置文件  
└─vendor-------------------------------------------第三方类库目录
该目录结构已经包含了主要的文件夹或文件,但由于文件太多,部分目录下的文件夹/文件并未全部列明,具体明细应参考实际程序包
二、目录解读

1、根目录下的目录如:apiserverfrontendbackendmobile 我们称之为应用或站点,每个应用(站点)都包含自己的一套MVC结构,可以解析不同的域名来访问。但请不要把域名直接解析到应用目录,而应该是解析到应用目录下的web目录,只有该目录才是允许对外访问的,以确保应用(站点)的安全。

2、根目录下的目录common是公共文件目录,所有应用(站点)的公共文件都可以放在此目录,方便重复调用。

3、每个应用(站点)下的配置文件,即config目录,是应用的配置文件,主要是配置:路由、控制器路径、视图、Session、组件等,并非数据库连接配置文件,我们的数据库配置文件是:@shopwind/frontend/web/data/config.php,所有应用都是 公用该配置文件,即便是多数据库,也是写在该配置文件中。

三、入口文件
入口文件也叫入口脚本,入口脚本是应用启动流程中的第一环,一个应用(不管是网页应用还是控制台应用)只有一个入口脚本。 终端用户的请求通过入口脚本实例化应用并将请求转发到应用。 Web 应用的入口脚本必须放在终端用户能够访问的目录下,通常命名为 index.php。以下例子就是各个Web应用的入口文件路径:
## 前台PC端入口文件
@shopwind/frontend/web/index.php

## 后台入口文件
@shopwind/frontend/web/admin/index.php

## API接口入口文件
@shopwind/frontend/web/api/index.php
更多问题,可以访问我们的 开发者社区反馈,我们会有官方技术人员在线解答。