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

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

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

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

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

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

Q&A

解決済

1回答

2387閲覧

ロリポップ(Lolipop)にLaravelのインストールをしようとすると、メモリエラーで失敗する

wolv

総合スコア2

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

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

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

0グッド

1クリップ

投稿2020/07/30 22:42

編集2020/07/31 01:14

やりたいこと

ロリポップのサーバにLaravelをインストールしたい。

環境

サーバ:ロリポップ
OS:Linux(CentOS)
PHP:Ver.7.1

実行コマンド

/usr/local/php7.1/bin/php composer.phar create-project --prefer-dist laravel/laravel プロジェクト名 "5.5.*"

エラー後、途中まで作成されてプロジェクト名のフォルダが存在しています。
そのプロジェクト名のフォルダに移動し、以下のコマンドを実行。

/usr/local/php7.1/bin/php ../composer.phar install

結果は変わらず、メモリエラーで失敗します。

エラーの内容

ロリポップにLaravelをインストールしようとすると、以下のメッセージが表示されインストールに失敗します。

mmap() failed: [12] Cannot allocate memory
PHP Fatal error: Out of memory (allocated 727719936) (tried to allocate 4096 bytes) in phar:///home/users/2/schoolbus.jp-chi-papa/web/minten_work/composer.phar/src/Composer/DependencyResolver/Solver.php on line 223

Fatal error: Out of memory (allocated 727719936) (tried to allocate 4096 bytes) in phar:///home/users/2/schoolbus.jp-chi-papa/web/minten_work/composer.phar/src/Composer/DependencyResolver/Solver.php on line 223

試したこと

メモリー不足なので、phpコマンドのオプションでメモリの制御をしました。
コマンドは以下

/usr/local/php7.1/bin/php -d memory_limit=-1 ../composer.phar install

結果は同じく、メモリの無制限オプションが効いてくれないっぽい挙動をしました。

回避策

・コマンド実行時にキャッシュさせない
キャッシュとしてメモリを食いつぶしているみたいなので、キャッシュをさせないでインストールする方法があれば解決するのではと考えています。

・パッケージとして1つになっているものを個別にインストール
パッケージで一気にインストールではなく、個別インストールしていければ、解決するかもと考えていますが、そんなやり方があるのかどうか。。

エラーの詳細

composerのオプションの、メモリ使用量が確認できる「--profile」とデバッグログを出力する「-vvv」を使用して実行した結果は以下の通りです。
イメージ説明
イメージ説明
イメージ説明
イメージ説明

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

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

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

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

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

m.ts10806

2020/07/30 22:55

そもそも提示のサーバーは導入しようとしているバージョンのLaravelの環境要件満たしてますか?
wolv

2020/07/31 00:24

コメントありがとうございます。 導入しようとしているLaravelバージョン5.5 PHPバージョン7.1.5 [その他拡張機能の確認結果] [hostmei@user test_project]$ /usr/local/php7.1/bin/php -m | grep -e openssl -e PDO -e mbstring -e tokenizer -e ^xml$ -e ctype -e json -e bcmath bcmath ctype json mbstring openssl PDO tokenizer xml 以下のサイトで要件と照らし合わせ、問題ない認識です。 https://readouble.com/laravel/5.5/ja/installation.html
wolv

2020/07/31 01:55

こめんとありがとうございます。 頂いたサイトを参考にし composer.pharの再作成を実施しましたが、同じエラーとなりました。。
guest

回答1

0

ベストアンサー

Lolipopは共用サーバなのでユーザーごとのメモリ使用量の上限が決められている可能性があります。
(PHPのメモリ使用量とは別に)

ローカルで作成したものをアップロードする形を取るのが良いかと思います。

投稿2020/08/04 06:15

mikkame

総合スコア5036

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

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

wolv

2020/08/04 08:32

「ローカルで作成したものをアップロードする形を取るのが良いかと思います。」 この方法があることは調べても出てきませんでした。 この方法で実施したところ、トップページの表示が問題なくできました。 有益な情報ありがとうございます。
mikkame

2020/08/04 09:36 編集

php/composerの場合は他の言語(nodejsのnpm/rubyのgem/pythonのpip)と違い(phpの拡張機能を除いて)php言語で実装されているライブラリ群なので、環境依存度が低いでため可能です
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問