安装
安装
你是视觉学习者吗?Laracasts 为 Laravel 新手提供了一个免费的、全面的 Laravel 入门教程。这是开始你旅程的好地方。
服务器要求
Laravel 框架有一些系统要求。当然,所有这些要求都可以通过 Laravel Homestead 虚拟机来满足,因此强烈建议您使用 Homestead 作为本地 Laravel 开发环境。
然而,如果您不使用 Homestead,您需要确保您的服务器满足以下要求:
- PHP >= 5.6.4
- OpenSSL PHP 扩展
- PDO PHP 扩展
- Mbstring PHP 扩展
- Tokenizer PHP 扩展
- XML PHP 扩展
安装 Laravel
Laravel 使用 Composer 来管理其依赖项。因此,在使用 Laravel 之前,请确保您的机器上已安装 Composer。
通过 Laravel 安装器
首先,使用 Composer 下载 Laravel 安装器:
composer global require "laravel/installer"
确保将 $HOME/.composer/vendor/bin
目录(或您操作系统的等效目录)放入您的 $PATH 中,以便系统可以找到 laravel
可执行文件。
安装后,laravel new
命令将在您指定的目录中创建一个新的 Laravel 安装。例如,laravel new blog
将创建一个名为 blog
的目录,其中包含一个新的 Laravel 安装,所有 Laravel 的依赖项都已安装:
laravel new blog
通过 Composer Create-Project
或者,您也可以通过在终端中发出 Composer create-project
命令来安装 Laravel:
composer create-project --prefer-dist laravel/laravel blog "5.4.*"
本地开发服务器
如果您在本地安装了 PHP,并希望使用 PHP 的内置开发服务器来服务您的应用程序,您可以使用 serve
Artisan 命令。此命令将在 http://localhost:8000
启动一个开发服务器:
php artisan serve
当然,通过 Homestead 和 Valet 可以获得更强大的本地开发选项。
配置
公共目录
安装 Laravel 后,您应该将 Web 服务器的文档 / 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
文件及其文档。它包含几个选项,如 timezone
和 locale
,您可能希望根据您的应用程序进行更改。
您可能还希望配置 Laravel 的一些其他组件,例如:
Web 服务器配置
美化 URL
Apache
Laravel 包含一个 public/.htaccess
文件,用于提供不带 index.php
前端控制器的 URL。在使用 Apache 提供 Laravel 之前,请确保启用 mod_rewrite
模块,以便服务器能够识别 .htaccess
文件。
如果 Laravel 附带的 .htaccess
文件不适用于您的 Apache 安装,请尝试以下替代方案:
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;
}