目录结构
可以看到,M2的目录挺多的,我们依次来讲解下。
app
毫无疑问,app目录就是存放的网站源代码。
我们的插件/主题/js/css/等等都放在这个目录里。
bin
这是M2提供的命令行工具,比如最常用的
php bin/magento
dev
M2的单元测试代码,这个我们普通用户一般用不到。m2的官方开发者会用到。一般用不到,不管他就行。
generated
这个比较特殊,在M2里可以定义一些虚拟类。
这些类是自动生成的,会放在generated目录里。
相当于php代码缓存。
如果你有修改php的构造函数function __construct()
里的代码,就要rm generated/* -rf
,不然会出现找不到类或者其他奇怪的错误。
lib
这里放的是m2自带的公用js/jquery插件和字体。
一般用不到,不管他就行。
phpserver
这里放的是php内置的web服务器。
用来代替浏览器,直接命令行里打开网站。
一般用不到,不管他就行。
pub
这里存放的是图片文件(比如产品图片)
以及生成的静态缓存文件.
我们会经常用到
setup
一看就知道是安装目录,没什么好说的。
var
这里存放的是cache以及page cahce缓存文件。
以及log,report,export文件等。
我们会经常用到
.htaccess
这个是apache服务器里的配置文件
如果你用的是apache服务的话 会用到这个文件
composer.json
这里就是m2依赖的各种库文件。
composer install 就是读取的这个文件。
index.php
毫无疑问,这是入口文件
注意: M2的默认nginx配置的入口文件是在pub/index.php
里,是为了安全,不暴露app/
文件夹。
nginx.conf.sample
这是nginx下,m2官方推荐的配置文件。
如果你用的是nginx服务的话,会用到这个文件
基本上就这些了。
现在我们重点讲解下app,pub这2个目录下面的内容。
因为我们开发中 基本上就是跟这2个目录打交道。