MacOS Laravel 安装教程

时间:2024-08-06 18:37:20

一、到官网选择 Laravel 版本

根据个人的喜好选择安装的版本,我选择的是 5.8

https://laravel.com/docs/5.8/installation

以下是 Laravel 5.8 的安装环境要求

MacOS Laravel 安装教程

需要确保满足以上条件

二、安装 Composer

composer 由于中国的网络防火墙问题,所以使用官网的正常操作会很慢,大概下载一次需要 15 以上,可以通过以下方式安装 composer 中文镜像,加快 composer 的速度https://pkg.phpcomposer.com/

修改当前项目的 composer.json 配置文件:

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:

composer config repo.packagist composer https://packagist.phpcomposer.com

上述命令将会在当前项目中的 composer.json 文件的末尾自动添加镜像的配置信息(你也可以自己手工添加):

"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
}

OK,一切搞定!试一下 composer install 来体验飞一般的速度吧!

镜像原理:

一般情况下,安装包的数据(主要是 zip 文件)一般是从 github.com 上下载的,安装包的元数据是从 packagist.org 上下载的。

然而,由于众所周知的原因,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”。

“Packagist 中国全量镜像”所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求,从而达到加速 composer install以及 composer update 的过程,并且更加快速、稳定。因此,即使 packagist.orggithub.com 发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。

三、安装 Laravel

composer create-project --prefer-dist laravel/laravel blog "5.8.*"

四、启动 Laravel

php artisan serve

MacOS Laravel 安装教程

在浏览器打开 http://127.0.0.1:8000/

MacOS Laravel 安装教程

查看 Laravel 版本

命令行运行:php artisan

MacOS Laravel 安装教程

五、可能遇到的问题

1. 输入 php artisan serve 后报错,内容如下:

Fatal error: Uncaught exception 'ReflectionException' with message 'Class App\Http\Kernel does not exist' in /home/clients/ffa41f94063541f86a0fe6602a73caa1/myforms/vendor/laravel/framework/src/Illuminate/Container/Container.php:779 Stack trace: #0 /home/clients/ffa41f94063541f86a0fe6602a73caa1/myforms/vendor/laravel/framework/src/Illuminate/Container/Container.php(779): ReflectionClass->__construct('App\Http\Kernel') #1 /home/clients/ffa41f94063541f86a0fe6602a73caa1/myforms/vendor/laravel/framework/src/Illuminate/Container/Container.php(659): Illuminate\Container\Container->build('App\Http\Kernel', Array) #2 /home/clients/ffa41f94063541f86a0fe6602a73caa1/myforms/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(644): Illuminate\Container\Container->make('App\Http\Kernel', Array) #3 /home/clients/ffa41f94063541f86a0fe6602a73caa1/myforms/vendor/laravel/framework/src/Illuminate/Container/Container.php(229): Illuminate\Foundation\Application->make('App\Http\Kernel', Array) #4 /home/clients/ffa41f94063 in /home/clients/ffa41f94063541f86a0fe6602a73caa1/myforms/vendor/laravel/framework/src/Illuminate/Container/Container.php on line 779

解决方法:

https://www.youtube.com/watch?v=2lEUCWZ21KQ

检查 composer.json 并添加如下代码:

"autoload": {
"psr-4": {
"App\\": "app/"
},
"classmap": [
"database/seeds",
"database/factories"
]
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},

保存退出,运行命令:

composer.phar dump-autoload