質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

4180閲覧

herokuにpushできなくなりました。composer.jsonを加えただけなのですが。。。

退会済みユーザー

退会済みユーザー

総合スコア0

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/07/12 05:22

herokuにてphpファイルを実行したところmb_substrあたりでうまくいかず調べるとherokuではmbstringをcomposer.jsonで記述する必要があると知りcomposer.jsonを作りcomposer installを行いました。
そこまではうまく行ったのですが、git push heroku masterをするとerrorが出てしまいます。

herokuにpushした時のerrorが以下です。

Counting objects: 2427, done. Delta compression using up to 4 threads. Compressing objects: 100% (2315/2315), done. Writing objects: 100% (2427/2427), 1.91 MiB | 367.00 KiB/s, done. Total 2427 (delta 675), reused 0 (delta 0) remote: Compressing source files... done. remote: Building source: remote: remote: -----> PHP app detected remote: -----> Bootstrapping... remote: -----> Installing platform packages... remote: - php (7.1.3) remote: - ext-mbstring (bundled with php) remote: - apache (2.4.20) remote: - nginx (1.8.1) remote: -----> Installing dependencies... remote: NOTICE: Using '/composer.phar' to install dependencies. remote: Composer version 1.4.2 2017-05-17 08:17:52 remote: remote: ! WARNING: Your Composer vendor dir is part of your Git repository. remote: This directory should not be under version control; only your remote: 'composer.json' and 'composer.lock' files should be added, which remote: will let Composer handle installation of dependencies on deploy. remote: To suppress this notice, first remove the folder from your index remote: by running 'git rm -r --cached vendor/'. remote: Next, edit your project's '.gitignore' file and add the folder remote: '/vendor/' to the list. remote: For more info, refer to the Composer FAQ: http://bit.ly/1rlCSZU remote: remote: Loading composer repositories with package information remote: Installing dependencies from lock file remote: Package operations: 0 installs, 0 updates, 1 removal remote: - Removing heroku/heroku-buildpack-php (v121) remote: Generating optimized autoload files remote: -----> Preparing runtime environment... remote: NOTICE: No Procfile, using 'web: heroku-php-apache2'. remote: -----> Checking for additional extensions to install... remote: -----> PHP app detected remote: ln: failed to create symbolic link '/app/.heroku/php/php': File exists remote: ! Push rejected, failed to compile PHP app. remote: remote: ! Push failed remote: Verifying deploy... remote: remote: ! Push rejected to kifu-getter. remote: To https://git.heroku.com/kifu-getter.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/kifu-getter.git'

またcomposer.jsonは以下のようにしております。

json

1{ 2 "require" : { 3 "php": ">=5.6.0", 4 "ext-mbstring": "*", 5 "silex/silex": "~1.3", 6 "monolog/monolog": "~1.7", 7 "twig/twig": "^1.19", 8 "symfony/twig-bridge": "^2.7" 9 }, 10 "require-dev": { 11 "heroku/heroku-buildpack-php": "*" 12 } 13} 14

わかるかた、心当たりある方、是非ともご教授よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

GitHub から heroku に push する automatic deploys 機能をお使いですか?そうであればプロジェクトルートに空の index.php を置いて下さい。

投稿2017/07/12 06:50

mattn

総合スコア5030

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/07/12 07:12

回答ありがとうございます。 automatic deploys機能は利用しておりません。が、ロートディレクトリにはindex.phpが存在しています。 index.phpからフォームを送信→render.phpにてmb_stringを使用しております。
mattn

2017/07/12 07:22

となると composer.lock が無いとかですかね。その場合、vendor も git リポジトリから消さないといけなくなりますが。
退会済みユーザー

退会済みユーザー

2017/07/12 07:39

composerとvenderの理解がイマイチであったためcomposer.lockがありながらもうまくpushできなかったためにvenderを加えていました。 composer.lockもcomposer.jsonもルートディレクトに起き(現状置いてあります)venderを消してpushするのを試してみるのがよろしいでしょうか?
退会済みユーザー

退会済みユーザー

2017/07/12 07:39

composerとvenderの理解がイマイチであったためcomposer.lockがありながらもうまくpushできなかったためにvenderを加えていました。 composer.lockもcomposer.jsonもルートディレクトに起き(現状置いてあります)venderを消してpushするのを試してみるのがよろしいでしょうか?
mattn

2017/07/12 08:31

composer を加えるなら vendor を消して lock も足すのが正解かと思います。
退会済みユーザー

退会済みユーザー

2017/07/12 23:08

vendorを決してlockを残してpushしたところ以下のようになりました。ほとんど変わっていない様子です。。。 今あるファイルはindex.html、render.php、phantomjs-get-html.js、composer.json、composer.lock、styles.cssがいずれもルーデイレクトリにある状態です。 watarasebashi:rendering hajime$ git push heroku indexphp-delete:master Counting objects: 2, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (2/2), 226 bytes | 0 bytes/s, done. Total 2 (delta 1), reused 0 (delta 0) remote: Compressing source files... done. remote: Building source: remote: remote: -----> PHP app detected remote: -----> Bootstrapping... remote: -----> Installing platform packages... remote: - php (7.1.3) remote: - ext-mbstring (bundled with php) remote: - apache (2.4.20) remote: - nginx (1.8.1) remote: -----> Installing dependencies... remote: Composer version 1.4.1 2017-03-10 09:29:45 remote: Loading composer repositories with package information remote: Installing dependencies from lock file remote: Package operations: 12 installs, 0 updates, 0 removals remote: - Installing psr/log (1.0.2): Downloading (100% remote: - Installing monolog/monolog (1.23.0): Downloading (100%) remote: - Installing symfony/routing (v3.0.9): Downloading (100%) remote: - Installing symfony/polyfill-mbstring (v1.4.0): Downloading (100%) remote: - Installing symfony/http-foundation (v3.0.9): Downloading (100%) remote: - Installing symfony/event-dispatcher (v3.0.9): Downloading (100%) remote: - Installing symfony/debug (v3.3.4): Downloading (100%) remote: - Installing symfony/http-kernel (v3.0.9): Downloading (100%) remote: - Installing pimple/pimple (v1.1.1): Downloading (100%) remote: - Installing silex/silex (v1.3.6): Downloading (100%) remote: - Installing twig/twig (v1.34.4): Downloading (100%) remote: - Installing symfony/twig-bridge (v2.8.24): Downloading (100%) remote: Generating optimized autoload files remote: -----> Preparing runtime environment... remote: NOTICE: No Procfile, using 'web: heroku-php-apache2'. remote: -----> Checking for additional extensions to install... remote: -----> PHP app detected remote: ln: failed to create symbolic link '/app/.heroku/php/php': File exists remote: ! Push rejected, failed to compile PHP app. remote: remote: ! Push failed remote: Verifying deploy.... remote: remote: ! Push rejected to kifu-getter. remote: To https://git.heroku.com/kifu-getter.git ! [remote rejected] indexphp-delete -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/kifu-getter.git'
mattn

2017/07/12 23:50 編集

あ、返信するつもりが回答になってしまった。 https://github.com/heroku/heroku-buildpack-php/issues/181 この issue と同じですね。この issue を書いた人は一旦ビルドパックを消して作り直したらうまく行ったと書いています。
退会済みユーザー

退会済みユーザー

2017/07/13 00:18

ビルドバックを削除してからpushしたらpush成功しました!mattnさん、感謝してます。ありがとうございます。
mattn

2017/07/13 00:22

やたー! :)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問