Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为使用wamp服务器开发的php应用程序设置buildpack失败_Php_Git_Heroku_Web Hosting - Fatal编程技术网

为使用wamp服务器开发的php应用程序设置buildpack失败

为使用wamp服务器开发的php应用程序设置buildpack失败,php,git,heroku,web-hosting,Php,Git,Heroku,Web Hosting,我的应用程序文件夹名为“social_network”。它位于wamp\www路径中。我正在尝试使用git命令将app folder(“social_network”)部署到heroku。我遵循了heroku说明页面中的所有说明。我将composer.json文件包括在app文件夹中,安装了composer,保存了Procfile。我甚至给出了“heroku buildpacks:set”的命令。但是推送仍然失败,错误消息是“set buildpack failed”。Procfile中的代码是

我的应用程序文件夹名为“social_network”。它位于wamp\www路径中。我正在尝试使用git命令将app folder(“social_network”)部署到heroku。我遵循了heroku说明页面中的所有说明。我将composer.json文件包括在app文件夹中,安装了composer,保存了Procfile。我甚至给出了“
heroku buildpacks:set
”的命令。但是推送仍然失败,错误消息是“set buildpack failed”。Procfile中的代码是:
“web:vendor/bin/heroku-php-apache2。”
这是为wamp服务器中的应用程序指定的进程类型吗?我应该尝试部署哪个文件夹-wamp或social_network?我怀疑在使用wamp server开发时,为了部署,是否还会有更多的更改。我如何才能成功部署?

我犯的错误是将composer.json和Procfile文件以及我的php文件放在social_network文件夹下,而存储库是在www文件夹中创建的(我在www文件夹中有我的.git文件夹)。因此,heroku无法将我的应用程序识别为php应用程序,推送失败

由于我很难部署通过wamp服务器开发的php应用程序,我想解释一下部署php应用程序所涉及的所有步骤,它需要一个数据库来支持heroku

最好将所有应用程序文件直接放在www文件夹下

可参考以下文件:

拥有heroku帐户,安装php,安装composer并运行它。编写器将在名为vendor的文件夹中下载所需的软件包,该文件夹应位于您的应用程序目录中

下载heroku CLI并使用以下命令登录到heroku:

heroku login
包括composer.json文件,以便heroku能够识别该应用程序是一个php应用程序。它应包含以下代码:

{
  "require": {
    "php": "^5.5.12"
  }
}
web: vendor/bin/heroku-php-apache2
上面的代码将指示Heroku使用最新版本的PHP5。该版本可以是应用程序使用的任何内容

有一个Procfile来声明应该执行什么命令来启动应用程序。它应具有以下代码:

{
  "require": {
    "php": "^5.5.12"
  }
}
web: vendor/bin/heroku-php-apache2
现在在cmd中,确保您的www文件夹的路径:

c:\wamp\www>
如果对composer.json文件进行了任何更改,请通过以下方式更新composer.lock文件:

 c:\wamp\www> update composer
接下来,通过以下方式在www文件夹中创建新存储库:

c:\wamp\www>git init
然后将文件添加到存储库中

c:\wamp\www>git add .
然后提交:

c:\wamp\www>git commit
然后在heroku中创建一个应用程序

c:\wamp\www>heroku create
然后是创建数据库和建立连接的部分:

可参考以下文件:

创建数据库:

C:\wamp\www>heroku addons:create cleardb:ignite
C:\wamp\www>mysql --host=us-cdbr-iron-east-04.cleardb.net --user=b8xxxxxx --password=edxxxxxx --reconnect heroku_xxxxxx< yoursqlfile.sql
将数据库的url设置为在heroku中创建的应用程序:

C:\wamp\www> heroku config:set DATABASE_URL='the url that was created by the above command'
c:\wamp\www>git push heroku master
要了解CLEARDB_数据库_URL:

C:\wamp\www>heroku config
其中提供了url:

CLEARDB_DATABASE_URL= mysql://user:password@host/heroku_db?reconnect=true
CLEARDB_数据库_URL示例:

C:\wamp\www>heroku config
mysql://b8xxxxxx:edxxxx@us-cdbr-iron-east-04.cleardb.net/herokuxx‌​xxxx?重新连接=真

要将现有sql文件转储到heroku中的sql数据库,请确保已为mysql设置了路径,然后发出以下命令:

获取连接到数据库的mysql提示

C:\wamp\www>mysql -u b8xxxxxx -h us-cdbr-iron-east-04.cleardb.net -p heroku_xxxxxx
要将现有文件转储到heroku数据库,请执行以下操作:

C:\wamp\www>heroku addons:create cleardb:ignite
C:\wamp\www>mysql --host=us-cdbr-iron-east-04.cleardb.net --user=b8xxxxxx --password=edxxxxxx --reconnect heroku_xxxxxx< yoursqlfile.sql
打开应用程序:

c:\wamp\www>heroku open
就这样!现在该网站已成功托管到heroku上