如何在共享主机上部署 Yii2 Advanced 应用程序

How to deploy Yii2 Advanced application on a shared Hosting

带有供应商文件夹的 Yii2 高级应用程序超过 ~100 MB,因此很难使用 FTP 软件上传。

  1. 在共享服务器中上传我的应用程序后,我需要更新作曲家。
  2. 无法从 git
  3. 克隆

在共享主机上部署 yii2 高级应用程序的步骤 (注意:您需要通过 ssh 访问服务器,如果没有:请联系您的托管服务提供商)

  1. 正在生成 SSH 密钥对:打开终端并输入以下内容

    ssh-keygen -t dsa

    ssh-keygen -t rsa

  2. 输出将类似于

Generating public/private dsa key pair. Enter file in which to save the key (~/.ssh/id_dsa): Press [Enter] key Enter passphrase (empty for no passphrase): Press [Enter] key Enter same passphrase again: Press [Enter] key Your identification has been saved in ~/.ssh/id_dsa Your public key has been saved in ~/.ssh/id_dsa.pub The key fingerprint is:

Generating public/private dsa key pair. Enter file in which to save the key (~/.ssh/id_dsa): Press [Enter] key Enter passphrase (empty for no passphrase): Press [Enter] key Enter same passphrase again: Press [Enter] key Your identification has been saved in ~/.ssh/id_dsa Your public key has been saved in ~/.ssh/id_dsa.pub The key fingerprint is:

  1. 在 /home// 下为远程主机上的托管包创建一个 .ssh 目录(注意前面的点)。然后,您必须在这个 .ssh 目录
  2. 中创建一个名为 authorized_keys 的文件
  3. 将本地~/.ssh/id_dsa.pub 或~/.ssh/id_rsa.pub 文件的内容复制到authorized_keys文件
  4. 要连接你的服务器,打开终端并输入以下内容

    ssh -l 用户远程服务器

user 替换为您的 cpanel 用户名,将 remote-server 替换为您的远程服务器主机名。输入您的 cpanel 密码,终端将使用 ssh 登录您的远程服务器。

  1. 从 git 存储库克隆您的应用程序

    git clone https://username@gitlab.com/username/repository.git public_html

  2. 转到public_html执行以下操作

    curl -sS https://getcomposer.org/installer | php

    php composer.phar 全局要求 "fxp/composer-asset-plugin:1.0.0"

    php 初始化

  3. 将环境设置为生产环境(推荐)

    phpcomposer.phar更新

这将下载所有依赖项并设置您的应用程序,不要忘记在主配置文件中配置数据库。

我最近遇到了类似的问题,没有 ssh 访问权限。然而,我注意到大部分大小和文件是由我的项目和供应商的 .git 文件夹引起的。我的解决方案是将我的 FTP 客户端设置为忽略所有以 .git.

开头的文件和文件夹

例如,在 Filezilla 上,这可以通过转到“查看”->“文件名过滤器”并编辑 CVS and SVN 过滤器以忽略“.git*”来完成。