问题标签 [php-deployer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1492 浏览

php - 如何在 php 部署程序中从 .env 而不是 ~/.ssh/config 设置主机详细信息

我正在寻找如何设置主机用户并从 env 传递

这不起作用 - 需要字符串而不是函数

在 Symfony 4 中,我使用 env 并且不想在 ~/.ssh/config 中设置主机

更新1:

然后

dep 部署生产

得到

更新 2

composer.json 有 symfony/dotenv

但仍然

给我

更新 3
我创建测试文件:./test.php

php test.php 工作正常。

从同一位置运行 dep deploy:staging

给我

我的 deploy.php 文件

Deployer 全局安装

0 投票
2 回答
863 浏览

laravel - Laravel 使用部署器部署到数字海洋后出现 500 错误

想不通这个 我在 Digital Ocean 上托管我的 Laravel 网站。为了部署站点,我使用 deployer.org 的 deployer 和他们的 Laravel 食谱。Havn´t 并没有真正改变他们的配置中的任何内容,但是当我部署时,我可以很好地访问起始页,但任何其他页面都会呈现 500 错误。是什么赋予了?

更新:

大家好!.env 文件看起来不错,它有一个 KEY 并且那里似乎一切正常。但是,我从 nginx 错误日志中得到了这个:

这是存储文件夹的权限:

0 投票
2 回答
118 浏览

.htaccess - htaccess 将 http 重写为 https 并从 url 中删除子目录

您好我正在使用 Deployer 来部署 Craft CMS 网站。该站点符号链接到名为“当前”的目录。我正在使用 mod rewrite 从文档根目录中的 url 中删除 /current/public ,如下所示:

在当前/公共文件夹中有这个 htaccess 来删除 index.php 并创建漂亮的 url:

编辑 - 测试

以下工作强制使用 HTTPS,但我的 url 看起来像:example.com/current/public/about 等

如何调整它以强制站点始终使用 HTTPS?

0 投票
1 回答
808 浏览

laravel - 在供应商上使用部署器部署失败

我尝试使用部署程序部署 Laravel 应用程序。该过程失败。

下面你会看到回复

怎么了?

0 投票
1 回答
69 浏览

composer-php - 使用 bitbucket repo 和 composer deployer 进行部署时,我是否遗漏了什么?

我正在尝试将我的 WordPress 站点从本地部署到登台。我可以将文件部署到我的托管站点,但现在当我尝试访问我的站点时,Chrome 出现错误http://staging.responsivhub.com/

在将我的网站上传到 public_html/staging 中的网络服务器“siteground”并将我的子域根位置更改为 public_html/staging/current/web 之后。之后我收到此错误

(我已将我的用户名替换为用户)

我无法弄清楚我错过了什么。

0 投票
2 回答
1973 浏览

php - 部署者:从没有存储库的本地机器部署

所以我正在尝试使用部署器将我的本地文件部署到服务器。

但是我不确定部署程序究竟是如何工作的,因为它似乎需要一个 GIT 存储库——我不想使用它。在文档中,我真的找不到很多关于我的问题的信息。

我的问题: 如何在没有 git-repository 的情况下使用部署程序。只需将我的本地文件推送到服务器/多个服务器。

我使用安装了部署程序的 Symfony4,一切正常,直到出现以下错误:

谢谢


部署者.php

0 投票
1 回答
212 浏览

npm - 部署程序不获取缓存的二进制文件

部署者:6.4.6 操作系统:Ubuntu 18.04 LTS npm:5.6.0 节点:8.11.4

您好,当使用部署程序部署时,我的 npm 安装需要 157 秒,但是当我尝试在 ssh (使用同一用户)时重新创建该步骤时,当 node_modules 到位时,当没有(30 秒)和部署人员的 npm 期间,它需要 13~s安装我有 node_modules 存在。似乎问题是使用部署程序时某种缓存不起作用。

手动执行时:

使用部署器时:

手动执行时它会获取缓存的二进制文件,而通过部署程序执行时它不会 - 不知道为什么会发生这种情况 - 使用部署程序部署时我是否可能缺少一些环境变量?

0 投票
1 回答
1110 浏览

php - PHPDeployer:根据主机为本地任务设置变量?

我让部署程序作为 GitHub Action 管道的一部分运行。我想让管道为我运行 NPM 构建并将其复制为部署的一部分,而不是让部署程序在服务器上使用 npm dev 依赖项。对于我想在获取生产版本时使用调试版本core的网站。stageprod

完整的 deploy.php 如下:

我将dev_js_mode变量默认设置为“prod”,以确保调试版本不会出现在我不想要的地方。

如果我运行,dep -vvv deploy core我可以看到该local:javascript:package步骤已dev_js_mode设置为“prod”,这是因为该命令未在主机上运行,​​但我无法找到使其工作的方法。

0 投票
1 回答
106 浏览

symfony - 忽略 packagist.org 并为一个包指定路径

我修改了一个 symfony 4 包来修复一些错误。我现在想通过https://deployer.org/部署我的项目。

所以我在 .gitignore 中添加了这个不被忽略的包,以便我修改的包的文件夹在我的 github 存储库中可用。

执行deploy部署器的“”命令时,它会执行“”命令,/composer.phar install --verbose --prefer -dist --no-progress --no-interaction --no-dev --optimize-autoloader --no-suggest以便我的包编辑的文件夹被来自https://packagist.org/的原始包文件夹覆盖。

我想修改我的 composer.json 来定义我修改后的包的路径并且它不会被覆盖。

这是我在主项目的 composer.json 中尝试的内容:

这是我修改后的包的 composer.json:

但是经过我的修改,修改后的bundle还是被原来的bundle覆盖了,你知道吗?

0 投票
0 回答
90 浏览

laravel - 部署者 Laravel 迁移失败

所以我正在使用部署器来部署我的 Laravel 应用程序,并且在迁移之前一切似乎都可以正常工作。forge@localhost即使我尝试将 .env 文件复制到文件夹中并在全局范围内设置环境变量,它也会继续尝试使用默认变量。(我不确定其中哪一个被认为是最佳实践,所以如果有人能让我知道,我将不胜感激)。

但无论哪种方式,它仍然会出错,因为它出于某种原因使用默认值。

希望有人可以提供帮助。