2017-07-31 12 views
1

私は解決に苦労している奇妙な問題を見ている。問題は常にinclude()ない私たちのサーバー上で「壊れた」opcacheが表示されています。任意のアイデアを解決する方法?

require_once(): Failed opening required '/var/www/CrrrectPath/Abstract.php' 
(include_path='/var/www/') in /var/www/CorrectPath/Object.php on line 2 

毎日のようにして、私たちは私たちのサーバーへのデプロイを行うには、1台のサーバがの線に沿って、ログにエラーをストリーミングを開始します。メソッド名が同じ方法で破損することがあります(単一の文字が別の文字に置き換えられる)。

影響を受けたサーバーを本番環境でデバッグしたところ、ファイル自体は絶対に問題ありません。ここで私の勇気は、ファイルのopcacheが何らかの形で壊れているということです。

"validate_timestamps"を有効にしていたので、ファイルが再読込されている可能性があると考えましたrsync(私たちは展開の一環として、あるフォルダから "live"フォルダにr同期します)。次に、validate_timestampsを無効にして、コードが完全に同期された時点でopcache_reset()を実行しています。この問題はそれほど頻繁には発生しませんが、まだ発生しています。

他の誰かがこの問題に遭遇しましたか?決議の提案(完全に展開する方法を変える以外)詳細については

$ php -v 
PHP 7.0.21-1~ubuntu14.04.1+deb.sury.org+1 (cli) (built: Jul 6 2017 09:38:10) (NTS) 
Copyright (c) 1997-2017 The PHP Group 
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies 
    with Zend OPcache v7.0.21-1~ubuntu14.04.1+deb.sury.org+1, Copyright (c) 1999-2017, by Zend Technologies 

おかげ

+0

多分ランダムですが、「Open required required/var/www/CrrrectPath/Abstract.php」 - それは 'typo'ですか? 'CrrrectPath'の2番目の文字は' 'r''は' 'o''ですか? –

+0

@AntonisTsimourtosこれは誤字ではありません。それが実際の問題であり、我々が得るエラーです。したがって、私は、ファイルのopcacheが壊れているか、何かになっていると思います。 –

答えて

0

それは、この問題は、以下のPHPのバグに似ている/であることが表示されます

https://bugs.php.net/bug.php?id=71135

我々は再有効化しています」 validate_timestamps "とではなくとなります。展開時にはopcache_reset()となります。うまくいけば、これで問題は解決します。

関連する問題