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

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

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

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

FuelPHP

FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

Q&A

解決済

2回答

1416閲覧

FuelPHP ログディレクトリに書き込み不可

D.G.

総合スコア7

PHP

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

FuelPHP

FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

0グッド

1クリップ

投稿2018/01/14 03:33

###前提・実現したいこと
VMWare上にCentOS7+Apache+FuelPHPの環境を立てて既存のAPPを配置しWebアクセスしたところ、
下記のメッセージが表示されました。DBの問題は別途調査するとして、ログが書き込めない問題を解決したいです。

###発生している問題・エラーメッセージ

ErrorException [ Fatal Error ]: Uncaught Fuel\Core\FuelException: Unable to create the log file. The configured log path "/var/www/myapp/fuel/app/logs/" does not exist. in /var/www/myapp/fuel/core/classes/log.php:87 Stack trace: #0 /var/www/myapp/fuel/core/classes/log.php(58): Fuel\Core\Log::initialize() #1 [internal function]: Fuel\Core\Log::_init() #2 /var/www/myapp/fuel/core/classes/autoloader.php(377): call_user_func('Log::_init') #3 /var/www/myapp/fuel/core/classes/autoloader.php(249): Fuel\Core\Autoloader::init_class('Log') #4 [internal function]: Fuel\Core\Autoloader::load('Log') #5 /var/www/myapp/fuel/core/base.php(108): spl_autoload_call('Log') #6 /var/www/myapp/fuel/core/classes/errorhandler.php(126): logger(400, '1045 - SQLSTATE...') #7 /var/www/myapp/fuel/core/bootstrap.php(87): Fuel\Core\Errorhandler::exception_handler(Object(Fuel\Core\Database_Exception)) #8 [internal function]: {closure}(Object(Fuel\Core\Database_Exception)) #9 {main} thrown

###試したこと
/var/www/myapp/fuel/core/classes/log.php 内 例外スロー箇所の直前に下記を記述:
var_dump($path, is_dir($path) ,is_writable($path));die;
結果↓
string(31) "/var/www/myapp/fuel/app/logs/" bool(true) bool(false)

/var/www/myapp/fuel/app でllしてlogsディレクトリのパーミッション確認
drwxrwxrwx. 2 apache apache 68 1月 14 11:56 logs
※元々のowner はroot
↓apacheにchownしたのち、log.phpで書き込み可否判定を行う直前にclearstatcache()を追記して
再実行したが、変化なし。

apacheユーザーで/var/www/myapp/fuel/app/logs/apachenew ファイルをtouch → 作成成功
nobodyユーザーで/var/www/myapp/fuel/app/logs/nobodynew ファイルをtouch → 作成成功

###補足情報(言語/FW/ツール等のバージョンなど)
[OS]
CentOS Linux release 7.4.1708 (Core)

[Apache]
名前 : httpd
アーキテクチャー : x86_64
バージョン : 2.4.6
リリース : 67.el7.centos.6
容量 : 9.4 M
リポジトリー : installed
提供元リポジトリー : updates
要約 : Apache HTTP Server
URL : http://httpd.apache.org/
ライセンス : ASL 2.0
説明 : The Apache HTTP Server is a powerful, efficient, and
: extensible web server.

[PHP]
PHP 7.1.13 (cli) (built: Jan 3 2018 11:00:58) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

[FuelPHP]
Version 1.8 (Gitからcloneで取得)

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

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

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

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

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

guest

回答2

0

自己解決

SELinuxが有効になってしまっていることが原因でした、大変失礼いたしました。

投稿2018/01/14 07:23

D.G.

総合スコア7

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

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

0

つsudo chmod a+rX /var/www/myapp /var/www/myapp/fuel /var/www/myapp/fuel/app

追記
つsudo setenforce 0

投稿2018/01/14 03:43

編集2018/01/14 04:15
hichon

総合スコア5737

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

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

D.G.

2018/01/14 04:05

実行しましたが、現象解消されませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問