+7 (7232) 91-95-12

帮助

在 Fastpanel 中安装 Laravel

Laravel 是最受欢迎的 PHP 框架之一。本文介绍如何在安装了 Fastpanel 的服务器上部署新的 Laravel 项目:准备面板、创建网站、通过 Composer 安装框架、连接数据库,以及(可选)连接 Memcached。

示例中使用的域名为 example.com,网站所有者为 user,请替换为您自己的值。

服务器准备

安装 Composer

Laravel 通过依赖管理工具 Composer 安装。如果尚未安装 Composer:

  1. 登录 Fastpanel,打开侧边菜单,选择“设置”(Settings)→“应用程序”(Applications)。

Fastpanel 菜单中的“应用程序”部分

  1. 在列表中找到 Composer,点击右侧的安装图标。
  2. 等待应用状态变为“已安装”。

在 Fastpanel 中安装 Composer

创建网站

  1. 按常规方式为域名创建网站,详细步骤请参阅《在 Fastpanel 中部署网站》
  2. 打开网站卡片,进入“设置”(Settings),选择“网站目录”(Site directory)。
  3. 在“子目录”(Subdirectory)字段中填写 public,然后点击“保存”。

在网站设置中指定 public 子目录

这一步非常重要:在 Laravel 中,只有 public 文件夹应当对外开放。项目的其余部分——配置文件、包含密码的 .env 文件以及源代码——将无法通过浏览器访问。

同时请检查网站所选的 PHP 版本。当前版本的 Laravel 需要 PHP 8.2 或更高版本,可以在网站设置的 PHP 部分中更改版本。

创建项目

所有命令均以网站所有者身份通过 SSH 执行,而不是 root。所有者名称显示在 Fastpanel 的网站卡片中。如果您是首次连接,请参阅《通过 FTP 和 SFTP 访问》,SSH 使用相同的登录凭据。

Fastpanel 网站卡片中的网站所有者

  1. 进入网站目录:
    cd /var/www/user/data/www/example.com
  2. Composer 只能在空文件夹中创建项目。查看文件夹内容(包括隐藏文件):
    ls -la
    如果其中有面板的默认占位页面或其他不需要的文件,请将其删除。请仔细核对路径——该命令会永久删除目录中的内容,无法恢复:
    cd /var/www/user/data/www/example.com && rm -rf ./*
  3. 在当前文件夹中创建项目(命令末尾的点表示“当前目录”):
    composer create-project laravel/laravel .

安装需要一到几分钟。当最后出现应用密钥已生成的提示(Application key set successfully)时,项目即已就绪。在浏览器中打开域名,应当能看到 Laravel 的欢迎页面。

安装指定版本的 Laravel

如果项目需要特定版本的框架,请在路径后用引号注明版本:

composer create-project laravel/laravel . "10.*"

请注意,每个 Laravel 版本对 PHP 都有各自的要求:旧版本可能无法在较新的 PHP 上运行,反之亦然。

连接数据库

  1. 在网站卡片的“数据库”部分创建数据库和用户,记下数据库名称、用户名和密码。
  2. 打开项目根目录下的环境文件 .env,例如使用 nano 编辑器:
    nano .env
  3. 找到 DB_ 参数块并填写您的数据。如果这些行以 # 注释,请删除该符号:
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=数据库名称
    DB_USERNAME=数据库用户
    DB_PASSWORD=用户密码
  4. Ctrl+O 和 Enter 保存文件,按 Ctrl+X 退出编辑器。
  5. 运行迁移,在数据库中创建数据表:
    php artisan migrate

通常无需编辑 config/database.php 文件:它会从 .env 中读取配置值。我们不建议将密码直接写入配置文件——.env 不会提交到代码仓库,也不会被 Web 服务器对外提供。

如果修改 .env 后应用仍在使用旧参数,请清除配置缓存:

php artisan config:clear

连接 Memcached(可选)

Memcached 将缓存存储在内存中,有助于提升高负载应用的运行速度。使用它需要两样东西:Memcached 服务本身,以及网站所用 PHP 版本的相应扩展。

安装 PHP 扩展

  1. 在 Fastpanel 侧边菜单中打开“管理”(Management)→“PHP”。

Fastpanel 菜单中的 PHP 部分

  1. 在“PHP 模块”(PHP modules)选项卡中,于右侧选择网站使用的 PHP 版本。
  2. 在搜索框中输入 memcache,点击 php-memcached 模块旁边的安装图标。

安装 php-memcached 模块

安装 Memcached 服务

  1. 进入“设置”(Settings)→“应用程序”(Applications),与安装 Composer 时相同。
  2. 在列表中找到 Memcached,点击安装图标。

安装 Memcached 应用

配置 Laravel

Memcached 的连接参数定义在 config/cache.php 文件中,其取值同样来自 .env。在 .env 中添加或修改以下行:

CACHE_STORE=memcached
MEMCACHED_HOST=127.0.0.1
MEMCACHED_PORT=11211

在 Laravel 10 及更早版本中,应使用 CACHE_DRIVER 变量代替 CACHE_STORE。修改完成后,请执行 php artisan config:clear

使用其他 PHP 版本运行 Artisan

控制台中的 php 命令调用的是系统 PHP 版本,它可能与网站所选版本不同,因此 Artisan 或 Composer 有时会提示版本不兼容。此时请指定所需解释器的完整路径。Fastpanel 中的其他 PHP 版本位于 /opt/phpXX 形式的目录中。例如,对于 PHP 8.3:

/opt/php83/bin/php artisan list

Composer 也可以用同样的方式运行:

/opt/php83/bin/php $(which composer) install

常用 Artisan 命令

请在项目根目录中执行命令:

cd /var/www/user/data/www/example.com
  • 查看所有可用命令:
    php artisan list
  • 执行数据库迁移:
    php artisan migrate
  • 为生产环境缓存配置、路由和视图:
    php artisan optimize
  • 清除应用的所有缓存:
    php artisan optimize:clear
  • 将网站切换到维护模式(访问者将看到维护页面):
    php artisan down
    参数 --redirect=/路径 可将访问者重定向到指定页面。
  • 退出维护模式:
    php artisan up

php artisan serve 命令用于启动本地开发的内置服务器——在 Fastpanel 服务器上无需使用,网站由面板的 Web 服务器提供服务。

如果安装过程中遇到问题,请在个人中心创建工单,我们的技术支持团队将协助您解决。

如有任何疑问,请联系我们