安装

优质
小牛编辑
180浏览
2023-12-01

安装

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

服务器要求

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

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

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

安装 Laravel

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

通过 Laravel 安装器

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

composer global require "laravel/installer"

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

  • macOS: $HOME/.composer/vendor/bin
  • GNU / Linux 发行版: $HOME/.config/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

本地开发环境

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

php artisan serve

当然,最好的选择还是 Homestead 和 Valet。

配置

公共目录

安装完 Laravel 之后,你必须将 web 服务器根目录指向 public 目录。该目录下的 index.php 文件将作为所有进入应用程序的 HTTP 请求的前端控制器。

配置文件

Laravel 框架的所有配置文件都放在 config 目录中。每个选项都有注释,方便你随时查看文件并熟悉可用的选项。

目录权限

安装完 Laravel 后,你可能需要给这两个文件配置读写权限:storage 目录和 bootstrap/cache 目录应该允许 Web 服务器写入,否则 Laravel 程序将无法运行。 如果你使用的是 Homestead 虚拟机, 这些权限已经为你配置好了。

应用密钥

安装 Laravel 之后下一件应该做的事就是将应用程序的密钥设置为随机字符串。如果你是通过 Composer 或 Laravel 安装器安装的 Laravel,那这个密钥已经为你通过 php artisan key:generate 命令设置好了。

通常来说,这个字符串长度为 32 个字符。密钥可以在 .env 环境文件中设置。前提是你要将 .env.example 文件重命名为 .env如果应用程序密钥没有被设置,就不能确保你的用户会话和其他加密数据的安全!

其他配置

除了以上的配置,Laravel 几乎就不需要再配置什么了。你随时就能开发!但是,可能的话,还是希望你查看 config/app.php 文件及其注释。它包含几个你可能想要根据你的应用来更改的选项,比如 timezonelocale

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

  • 缓存
  • 数据库
  • 会话控制

Web 服务器配置

优雅链接

Apache

Laravel 使用 public/.htaccess 文件来为前端控制器提供了隐藏 index.php 的优雅链接. Laravel 使用 Apache 作为服务器,请务必启用 mod_rewrite 模块 让服务器能够支持 .htaccess 的解析。

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

Options +FollowSymLinks
RewriteEngine On

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,优雅链接会自动配置。