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

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

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

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

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

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

解決済

1回答

3235閲覧

Laravelで作成したプロジェクトをapacheで表示できない

roy29

総合スコア18

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

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

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

1クリップ

投稿2017/02/09 15:20

編集2017/02/09 15:21

別環境で作成したLaravelのプロジェクトをAWSにgit cloneしたところapacheと連携ができませんでした。
$ php artisan serve --host 0.0.0.0
でビルトインサーバーを立てたところ問題なく表示できたのでプロジェクト内の問題ではなくapacheの設定を疑っています。

環境
OS: Cent OS 7.2
PHP: 5.6
Laravel: 5.2
apache: 2.4

状況
IPアドレスを入力するとapacheのウェルカムページが表示されるのでapacheは作動しています。
またphpinfo()でPHPを解釈していることも確認しました。

しかし
http://XX.XX.XX.XX/MY_APP/public/
にアクセスするとHTTP ERROR 500が表示されてしまいます。

apacheのエラーログには
PHP Fatal error: Call to undefined function Symfony\\Polyfill\\Mbstring\\iconv_strpos() in /var/www/html/MY_APP/vendor/symfony/polyfill-mbstring/Mbstring.php on line 351
とあります。

PHPの拡張モジュールのmbstringが有効になっていないようです。
phpinfo()を確認したところ確かにmbstringの記述がありません。

他にもLaravelが必要とするPHP拡張が有効になっていませんでした(pdo, tokenizer)。
以下のコマンドで確認するところインストールはされています。

$ yum list installed | grep php
php-common.x86_64 5.4.16-42.el7 @base
php-fpm.x86_64 5.4.16-42.el7 @base
php56.x86_64 2.1-5.el7.remi @remi-safe
php56-php-cli.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-common.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-devel.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-gd.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-mbstring.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-mcrypt.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-mysqlnd.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-pdo.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-pear.noarch 1:1.10.1-9.el7.remi @remi-safe
php56-php-pecl-jsonc.x86_64 1.3.10-1.el7.remi @remi-safe
php56-php-pecl-jsonc-devel.x86_64 1.3.10-1.el7.remi @remi-safe
php56-php-pecl-zip.x86_64 1.13.5-1.el7.remi @remi-safe
php56-php-process.x86_64 5.6.30-1.el7.remi @remi-safe
php56-php-xml.x86_64 5.6.30-1.el7.remi @remi-safe
php56-runtime.x86_64 2.1-5.el7.remi @remi-safe

必要なPHP拡張が有効になっていないのが原因だと思い、
php.ini

extension=mbstring.so
を追記してapacheを再起動しましたが未だにphpinfo()に表示されません。

他に見るべきところがありましたらアドバイスお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

https://teratail.com/questions/16531
こちらの回答にある設定方法でどうでしょうか?

投稿2017/02/10 01:14

redara

総合スコア344

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

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

roy29

2017/02/12 05:55

情報ありがとうございます。 そちら試してみましたが、変化はありませんでした。 結局インスタンス削除してインストールし直したらうまくいきました。 原因はわからずじまいでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問