安装

安装

安装

{video} 你是一位初学者吗?Laracasts为初学者提供了 免费而又全面的 Laravel 教程 。 它是你开始 Laravel 学习之旅的好地方。

服务器要求

Laravel 对系统有一些要求。当然,所有这些要求 Laravel Homestead 虚拟机都能满足,因此强烈推荐你使用 Homestead 做为你的开发环境。

当然,假如你不使用 Homestead,请确保你的服务器满足以下要求:

  • PHP >= 7.1.3
  • OpenSSL PHP 拓展
  • PDO PHP 拓展
  • Mbstring PHP 拓展
  • Tokenizer PHP 拓展
  • XML PHP 拓展
  • Ctype PHP 拓展
  • JSON PHP 拓展
  • BCMath PHP 拓展

安装 Laravel

Laravel 使用 Composer 来管理项目依赖。因此,在使用 Laravel 之前,请确保你的机器已经安装了 Composer。

通过 Laravel 安装器

首先,通过使用 Composer 安装 Laravel 安装器:

composer global require laravel/installer

确保将 composer's system-wide vendor bin 目录放置在你的系统环境变量$PATH 中, 以便系统可以找到 Laravel 的可执行文件。该目录根据你的操作系统存在不同的位置中;一些常见的配置包括 :

  • macOS: $HOME/.composer/vendor/bin
  • GNU / Linux 发行版: $HOME/.config/composer/vendor/bin
  • Windows: %USERPROFILE%\AppData\Roaming\Composer\vendor\bin

安装完成后, laravel new 命令会在你指定的目录创建一个全新的 Laravel 项目。例如, laravel new blog 将会创建一个名为 blog 的目录,并已安装好 Laravel 所有的依赖项:

laravel new blog

通过 Composer 创建项目

或者,你也可以在终端中运行 create-project 命令来安装 Laravel:

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

本地开发环境

如果你在本地安装了 PHP, 并且你想使用 PHP 内置的服务器来为你的应用程序提供服务,则可以使用 Artisan 命令 serve。该命令会在 http://localhost:8000 上启动开发服务器:

php artisan serve

当然,最好还是选择 HomesteadValet

配置

公共路径

安装完 Laravel 之后,你应该配置你的 web 服务的文档目录指向 public 路径。该路径下的 index.php 文件作为进入应用的所有 HTTP 请求的前端控制器。

配置文件

Laravel 框架的所有配置文件存放在 config 目录下。每个选项都有文档标注,便于通过文件查看并熟悉对你有用的选项。

目录权限

在安装 Laravel 后,你可能需要配置一些权限。 storagebootstrap/cache 目录在你的 web 服务下应该是可写的权限,否则 Laravel 将无法运行。如果你用的是 Homestead 虚拟机,这些权限应该已经设置好了。

应用密钥

安装好 Laravel 之后的下一步是设置你的应用密钥为随机字符串。如果你通过 composer 或者 Laravel 安装器安装的,这个密钥已经通过 php artisan key:generate 命令为你设置好了。

通常,这个字符串应该是32个字符长度。这个密钥将会设置在环境变量文件 .env 中。如果你还没有将 .env.example 文件重命名为 .env 文件,你需要将 .env.example 文件重命名为 .env 文件。如果应用密钥还没有设置,你的用户会话和其他的加密数据将会不安全!

其他配置

Laravel 几乎不需要除上面所说的其他什么配置了。你可以随心所欲的开始开发了!然而,你可能会想要再次查看 config/app.php 文件和它的注释说明。它包含一些你可能希望根据你应用来更改的选项,诸如: timezonelocale

你还可能想要配置 Laravel 的其他的一些组件,例如:

Web 服务器配置

优雅链接

Apache

Laravel 中包含了一个 public/.htaccess 文件通常用于在资源路径中隐藏 index.php 的前端控制器。在用 Apache 为 Laravel提供服务之前,确保启用了 mod_rewrite 模块,这样 .htaccess 文件才能被服务器解析。

如果 Laravel 附带的 .htaccess 文件不起作用,尝试下面的方法替代:

Options +FollowSymLinks -Indexes
RewriteEngine On

RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

Nginx

如果你使用 Nginx ,在你的站点配置中加入以下配置,所有的请求将会引导至 index.php 前端控制器。

location / {
     try_files $uri $uri/ /index.php?$query_string;
}

当你使用 Homestead 或者 Valet 时,优雅链接将会自动配置好。

本文章首发在 LearnKu.com 网站上。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
贡献者:8
讨论数量: 6
发起讨论 只看当前版本


kiyoma
使用 Laravel new 指令创建项目如何制定版本?
0 个点赞 | 12 个回复 | 问答 | 课程版本 5.5
kennethgao
说好的夜间模式呢?
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
piscon
硬件坑需要注意!
0 个点赞 | 1 个回复 | 分享 | 课程版本 5.7
Jea
安装完后没 env?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.6
jiayier
如何让 API 的返回数据格式统一(Laravel5.8)
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.8
tsin
"Pretty URLs" 的翻译
0 个点赞 | 0 个回复 | 分享 | 课程版本 5.6