0

我已使用资源目录将 php 文件添加到我的静态应用程序中,并使用以下目录结构将我的应用程序部署在 heroku 上。

-Static
  -public
    -css (all css files)
    -js (all js files)
    -images(all images)
    -resources (pdfs,test.php)
    -index.html
  -config.ru
  -Gemfile
  -Gemfile.lock
  -Readme.md

现在,我想在提交表单时运行 php 文件(test.php)。但它没有在 heroku 上执行。谁能帮我描述运行 php 文件的步骤。

4

3 回答 3

2

希望对你有帮助......

创建 Heroku 应用程序时,您必须确保使用了 PHP buildpack。这就是将 PHP 运行时注入您的应用程序 slug 的内容。添加一个 index.php 文件(这是检测 PHP 的方式)或像这样对其进行硬编码:

heroku config:add BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-php.git

按照此问题中的详细信息设置库路径:

    heroku config:add LD_LIBRARY_PATH=/app/php/ext:/app/apache/lib

运行你的东西:

     heroku run ./php/bin/php --version

总结一下:

 heroku config:add BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-php.git
 heroku config:add LD_LIBRARY_PATH=/app/php/ext:/app/apache/lib
 heroku run ./php/bin/php --version

一个有用的调试方法是 bash 进入正在运行的 Heroku dyno: heroku run bash。这会让你四处闲逛,看看事情在哪里并进行实验。

 sudo heroku run path/to/file.php

如果你的 shell 不能使用 php 命令(即它的别名),你需要提供绝对路径:

  sudo /usr/bin/php path/to/file.php 

这就是它通常所在的位置。要找到您的 PHP bin 位置,请尝试:

  whereis php
于 2013-09-10T05:46:41.123 回答
0

很简单:在 home.html 中重命名 index.html。创建一个 index.php 并链接到您的 home.html。

学分:这个网站

于 2013-09-10T12:18:47.340 回答
0

改变:

在 Heroku 上运行 PHP 脚本时,现在不要使用 PHP 路径。只需使用“php”。

heroku run php --version

sudo heroku run php path/to/file.php

(可能不需要使用 sudo - 取自上面的示例 - 我不使用 sudo )

于 2016-09-23T11:20:44.483 回答