企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 安装 ## 服务器要求 Laravel 对系统有一些要求。当然,所有这些要求[Laravel Homestead]虚拟机都能满足。 如你不使用 Homestead ,请确保你的服务器满足下面的要求: * PHP >= 7.1.3 * OpenSSL PHP 扩展 * PDO PHP 扩展 * Mbstring PHP 扩展 * Tokenizer PHP 扩展 * XML PHP 扩展 * Ctype PHP 扩展 * JSON PHP 扩展 ### 安装 Laravel Laravel 使用[Composer](https://getcomposer.org/)来管理项目依赖。因此,在使用 Laravel 之前,请确保你的机器已经安装了 Composer。 #### 通过 Laravel 安装器 首先,通过使用 Composer 安装 Laravel 安装器: ~~~php 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` 安装完成后,`laravel new`命令会在你指定的目录创建一个全新的 Laravel 项目。例如,`laravel new blog`将会创建一个名为`blog`的目录,并已安装好所有的 Laravel 依赖项: ~~~php laravel new blog ~~~ #### 通过 Composer 创建项目 或者,你也可以在终端中运行`create-project`命令来安装 Laravel ~~~php composer create-project --prefer-dist laravel/laravel blog ~~~ #### 本地开发环境 如果你在本地安装了 PHP,并且你想使用 PHP内置的服务器来为你的应用程序提供服务,则可以使用`serve Artisan`命令。该命令会在`http://localhost:8000`上启动开发服务器: ~~~php php artisan serve ~~~ 当然,最好的选择还是[Homestead](https://laravel-china.org/docs/laravel/5.7/homestead)和[Valet](https://laravel-china.org/docs/laravel/5.7/valet)。 ### 配置 #### 公共目录 安装完 Laravel 之后,你必须将 web 服务器根目录指向`public`目录。该目录下的`index.php`文件将作为所有进入应用程序的 HTTP 请求的前端控制器。 #### 配置文件 Laravel 框架的所有配置文件都放在`config`目录中。每个选项都有注释,方便你随时查看文件并熟悉可用的选项。 #### 目录权限 安装完 Laravel 后,你可能需要给这两个文件配置读写权限:`storage`目录和`bootstrap/cache`目录应该允许 Web 服务器写入,否则 Laravel 程序将无法运行。 #### 应用密钥 安装 Laravel 之后下一件应该做的事就是将应用程序的密钥设置为随机字符串。如果你是通过 Composer 或 Laravel 安装器安装的 Laravel,那这个密钥已经为你通过`php artisan key:generate`命令设置好了。 通常来说,这个字符串长度为 32 个字符。密钥可以在`.env`环境文件中设置。前提是你要将`.env.example`文件重命名为`.env`。**如果应用程序密钥没有被设置,就不能确保你的用户会话和其他加密数据的安全!** #### 其他配置 除了以上的配置,Laravel 几乎就不需要再配置什么了。你随时就能开发!但是,可能的话,还是希望你查看`config/app.php`文件及其注释。它包含几个你可能想要根据你的应用来更改的选项,比如`timezone`和`locale`。 ## Web 服务器配置 ### 优雅链接 #### Apache Laravel 使用 `public/.htaccess` 文件来为前端控制器提供了隐藏 `index.php` 的优雅链接. Laravel 使用 Apache 作为服务器,请务必启用 `mod_rewrite` 模块 让服务器能够支持 `.htaccess` 的解析。 如果 Laravel 附带的 `.htaccess` 文件不起作用,尝试下面的方法替代: ~~~php Options +FollowSymLinks -Indexes RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] ~~~ #### Nginx 如果你使用 Nginx 服务器,在你的站点配置中加入以下内容,它将会将所有请求引导到 `index.php` 前端控制器中: ~~~php location / { try_files $uri $uri/ /index.php?$query_string; } ~~~ 当然,你使用[Homestead]或[Valet],优雅链接会自动配置。