Laravel框架01:composer和Laravel简介
- 一、Composer介绍
- 二、创建Laravel项目
- 三、Laravel目录结构
- 四、Laravel启动方式
一、Composer介绍
- composer 是PHP中用来管理依赖关系的工具。类似于Javascript的NPM。
- composer官网:https://getcomposer.org/
- 安装结束后,验证是否安装成功,如果出现composer版本号则安装成功。
- 安装成功后,切换镜像为国内镜像
- Packagist / Composer 中国全量镜像:https://pkg.xyz
- 我用腾讯云镜像。
composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/
- 国内其他镜像
阿里云镜像:https://mirrors.aliyun.com/composer/ 腾讯云镜像:https://mirrors.cloud.tencent.com/composer/ 华为云镜像 :https://repo.huaweicloud.com/repository/php/
- 查看全局配置
composer config -l -g
二、创建Laravel项目
-
使用composer创建一个名为laravel的laravel项目
composer create-project --prefer-dist laravel/laravel:^7.0 ./test
- composer:执行composer程序
- create-project:创建项目
- –prefer-dist:优先下载压缩包方式,而不是直接从GitHub上下载源码。
- laravel/laravel:^7.0:指定laravel7.0的版本,不指定版本就会下载当前composer所支持的最高版本。
- ./test:当前目录下,test文件夹
-
避坑:如果用powershell会报错,而用cmd就能正常运行。
-
避坑:如果出现一下情况,关闭系统代理。
-
创建成功。
三、Laravel目录结构
-
app目录:项目的核心目录,存放核心代码、控制器、模型。
app │ User.php # 用户类的模型,模型也可以分目录管理 ├───Console │ Kernel.php ├───Exceptions │ Handler.php ├───Http │ │ Kernel.php │ ├───Controllers # 控制器文件夹 │ │ Controller.php # 基类控制器 │ └───Middleware │ Authenticate.php │ CheckForMaintenanceMode.php │ EncryptCookies.php │ RedirectIfAuthenticated.php │ TrimStrings.php │ TrustHosts.php │ TrustProxies.php │ VerifyCsrfToken.php └───Providers AppServiceProvider.php AuthServiceProvider.php BroadcastServiceProvider.php EventServiceProvider.php RouteServiceProvider.php
-
bootstrap目录:laravel启动目录。
bootstrap │ app.php └───cache .gitignore packages.php services.php
-
config目录:配置目录,存放项目配置文件
-
database目录:存放与数据表有关的操作类文件
database │ .gitignore # GitHub生成的不管 ├───factories # 工厂类文件夹,不用 │ UserFactory.php ├───migrations # 存放迁移文件(创建数据表的类文件) │ 2014_10_12_000000_create_users_table.php │ 2014_10_12_100000_create_password_resets_table.php │ 2019_08_19_000000_create_failed_jobs_table.php └───seeds # 存放种子文件(数据表的数据填充文件) DatabaseSeeder.php
-
public目录:存放项目的项目单一入口文件,虚拟主机配置站点时需要指定到public下。
-
resources目录:存放静态文件、语言包文件、视图文件。
-
routes目录:定义路由的目录。
-
storage目录:主要存放缓存文件和日志文件。后期用户上传文件如果存在本地则也在storage下。
-
vendor目录:第三方工具类。
-
.env文件:设置一些系统相关的环境配置文件信息。config目录里面的文件配置内容一般都是读取该文件里面的配置信息。
-
artisan脚手架文件:主要用于生成的代码(自动生成),比如生成控制器、模型文件等。执行命令
php artisan 命令
-
composer.json依赖包配置文件:申明当前需要的软件依赖,不能删除。
四、Laravel启动方式
- 执行命令:
php artisan serve
,这种启动方式与apache无关。(不推荐) - 使用wamp或者lamp。修改虚拟主机配置和host文件:
<VirtualHost *:80> # 配置站点管理员邮箱,当站点显示500错误时会显示管理员邮箱 ServerAdmin webmaster@dummy-host2.example.com # 站点根目录 DocumentRoot "E:\Laravel\study\public" # 站点绑定的域名 ServerName www.study.com # 服务器别名的域名 ServerAlias study.com # 日志存放位置 ErrorLog "logs/study.com-error.log" CustomLog "logs/study.com-access.log" common # 针对站点的详细配置 <Directory "E:\Laravel\study\public"> Require all granted Allow from all # 没有index,就显示目录文件,不配置就显示403 Options +indexes AllowOverride All DirectoryIndex index.php index.html </Directory> </VirtualHost>
127.0.0.1 www.study.com study.com