代码之家  ›  专栏  ›  技术社区  ›  Hemant P

我有一个带有node_modules文件夹的Laravel项目。如何在cpanel上部署此项目。请一步一步指导

  •  0
  • Hemant P  · 技术社区  · 1 周前

    我有一个带有node_modules文件夹的Laravel项目。如何在cpanel上部署此项目。请引导我。

    Current Laravel folder structure:
    app
    resources
    bootstrap
    ....
    ....
    node_modules
    .env
    

    我是拉拉威尔的初学者。以前,我部署过没有node_modules的Laravel项目。但现在我在项目中有node_modules文件夹。引导我进行部署。 是否需要像“Angular”之类的构建。请帮忙。

    1 回复  |  直到 1 周前
        1
  •  1
  •   Imad Ullah    1 周前

    部署一个包含node_modules文件夹的Laravel项目通常表明您的项目正在使用node.js依赖项,可能是用于由Laravel Mix等工具管理的前端资产。以下是使用node_modules部署Laravel项目的基本指南:

    第一步:地方发展

    在部署之前,您应该确保所有东西都能在您的本地机器上工作。通常,您会运行:

    npm install
    npm run prod
    

    这将安装所有Node.js依赖项,并使用Laravel Mix(或您的package.json中指定的另一个构建工具)编译您的资产。npm run prod命令通常在生产模式下运行mix,从而最大限度地减少和优化您的资产。

    第二步:准备你的Laravel项目

    确保您的Laravel项目已准备好投入生产:

    环境配置: 为生产设置设置.env文件,尤其是数据库连接、应用程序环境(app_env=生产)和密钥(app_key)。

    优化 运行以下Laravel命令:

    php artisan config:cache
    php artisan route:cache
    php artisan view:cache
    

    这些命令分别优化配置加载、管线和视图。

    步骤3:从部署中排除node_modules

    您通常不希望部署 节点模块 文件夹到生产服务器。如果您在本地预编译资产,则此文件夹可能是巨大的,并且在服务器上是不必要的。请确保您的部署过程中排除了此文件夹。如果您正在使用 .gitignore 文件(如果是基于Git的部署),请确保 节点模块 列在其中。

    步骤4:部署代码

    将代码上载到服务器。这可以通过各种方法来实现:

    Git: 如果您的服务器安装了Git,您可以克隆存储库,然后在每次部署时提取更改。

    FTP/SFTP: 使用像FileZilla这样的工具手动将文件上传到服务器。

    步骤5:部署后设置

    一旦代码在服务器上,请从服务器上的项目根运行以下命令:

    1.安装Composer依赖项:

    composer install --optimize-autoloader --no-dev
    

    2.迁移数据库:

    php artisan migrate --force
    

    3.再次优化(如果需要):

    php artisan optimize
    

    步骤6:处理静态资产 如果您使用Laravel Mix或其他工具预编译资产(CSS/JS):

    • 确保这些编译的资产(通常在公共目录中) 已上载到您的服务器。它们应该在您的 意见。

    通过以下步骤,您应该能够高效、安全地部署具有Node.js管理的前端依赖项的Laravel项目。