Nette issue after month of running

14 days ago

Member | 3

Hi, I found a following problem.

I installed an Apache 2.4 and PHP 7.0.27 server with PDO MSSQL drivers. I developed a Nette intranet application, which is using in production 24/7 by operators. Application is running correctly.

But: after one month of running, I get the following error:

require(): file:// wrapper is disabled in the server configuration…

Warning: require(): file:// wrapper is disabled in the server configuration in D:\_SERVER_DATA\_web\rwa\vendor\composer\autoload_real.php on line 66

Warning: require(D:\_SERVER_DATA\_web\rwa\vendor\symfony\polyfill-mbstring\bootstrap.php): failed to open stream: no suitable wrapper could be found in D:\_SERVER_DATA\_web\rwa\vendor\composer\autoload_real.php on line 66

Fatal error: require(): Failed opening required ‘D:\_SERVER_DATA\_web\rwa\vendor\composer/../symfony/polyfill-mbstring/bootstrap.php’ (include_path=‘.;C:/_SERVER/php71/’) in D:\_SERVER_DATA\_web\rwa\vendor\composer\autoload_real.php on line 67

After restart Apache, problem will disappear.

It seems to be like there is a problem with PHP require file with full path. I checked PHP.ini configuration and allow_url_fopen is ON and also allow_url_include is ON

I tried to run composer self update, but it not helped.


nette application created in latest 2.4 version have failure.

dg/adminer-custom         v1.13.0 Customization for Adminer, the best database management tool written in PHP.
joseki/pdf-response       v4.0    Pdf response extension for Nette Framework
kdyby/strict-objects      v1.0.0  Simple trait to make your class strict, when calling or accessing undefined memb...
kdyby/translation         v2.5.0  Integration of Symfony/Translation into Nette Framework
latte/latte               v2.4.7  ☕ Latte: the intuitive and fast template engine for those who want the most se...
mpdf/mpdf                 v7.0.3  A PHP class to generate PDF files from HTML with Unicode/UTF-8 and CJK support
nette/application         v2.4.11 🏆 Nette Application: a full-stack component-based MVC kernel for PHP that hel...
nette/bootstrap           v2.4.5  đź…± Nette Bootstrap: the simple way to configure and bootstrap your Nette appli...
nette/caching             v2.5.8  ⏱ Nette Caching: library with easy-to-use API and many cache backends.
nette/component-model     v2.4.0  âš› Nette Component Model
nette/database            v2.4.5  đź’ľ Nette Database: layer with a familiar PDO-like API but much more powerful. ...
nette/di                  v2.4.11 đź’Ž Nette Dependency Injection Container: Flexible, compiled and full-featured ...
nette/finder              v2.4.1  Nette Finder: Files Searching
nette/forms               v2.4.7  ?? Nette Forms: generating, validating and processing secure forms in PHP. Handy...
nette/http                v2.4.8  🌐 Nette Http: abstraction for HTTP request, response and session. Provides ca...
nette/mail                v2.4.5  📧 Nette Mail: handy email creation and transfer library for PHP with both tex...
nette/neon                v2.4.2  Nette NEON: parser & generator for Nette Object Notation
nette/php-generator       v2.6.3  Nette PHP Generator
nette/reflection          v2.4.2  Nette Reflection: docblock annotations parser and common reflection classes
nette/robot-loader        v3.0.3  🍀 Nette RobotLoader: high performance and comfortable autoloader that will se...
nette/safe-stream         v2.3.3  Nette SafeStream: atomic and safe manipulation with files via native PHP functions.
nette/security            v2.4.3  🔑 Nette Security: provides authentication, authorization and a role-based acc...
nette/tester              v2.0.1  Nette Tester: enjoyable unit testing in PHP with code coverage reporter. 🍏đźŤ...
nette/utils               v2.5.1  đź›  Nette Utils: lightweight utilities for string & array manipulation, image h...
paragonie/random_compat   v2.0.12 PHP 5.x polyfill for random_bytes() and random_int() from PHP 7
psr/log                   1.0.2   Common interface for logging libraries
setasign/fpdi             1.6.2   FPDI is a collection of PHP classes facilitating developers to read pages from e...
symfony/config            v3.4.8  Symfony Config Component
symfony/filesystem        v3.4.8  Symfony Filesystem Component
symfony/polyfill-mbstring v1.7.0  Symfony polyfill for the Mbstring extension
symfony/translation       v3.4.8  Symfony Translation Component
tracy/tracy               v2.4.13 😎 Tracy: the addictive tool to ease debugging PHP code for cool developers. F...

But another application running on same server is running without problem:

latte/latte           v2.4.2 Latte: the amazing template engine for PHP
nette/application     v2.4.3 Nette Application MVC Component
nette/bootstrap       v2.4.2 Nette Bootstrap
nette/caching         v2.5.2 Nette Caching Component
nette/component-model v2.3.0 Nette Component Model
nette/database        v2.4.1 Nette Database Component
nette/di              v2.4.4 Nette Dependency Injection Component
nette/finder          v2.4.0 Nette Finder: Files Searching
nette/forms           v2.4.3 Nette Forms: greatly facilitates web forms
nette/http            v2.4.3 Nette HTTP Component
nette/mail            v2.4.1 Nette Mail: Sending E-mails
nette/neon            v2.4.0 Nette NEON: parser & generator for Nette Object Notation
nette/php-generator   v2.4.1 Nette PHP Generator
nette/reflection      v2.4.0 Nette PHP Reflection Component
nette/robot-loader    v2.4.1 Nette RobotLoader: comfortable autoloading
nette/security        v2.4.1 Nette Security: Access Control Component
nette/tester          v1.7.1 An easy-to-use PHP unit testing framework.
nette/utils           v2.4.2 Nette Utility Classes
tracy/tracy           v2.4.4 Tracy: useful PHP debugger

Thanks for any help.

14 days ago

Nette Core | 1100

I guess, it is a PHP or another library bug, not Nette one. Nette itself does not touch file:// protocol registration. Only if you are using Tester and in its tests you use the FileMutator tool.

You can try to find stream_wrapper_unregister() calls in source codes, if something touch the file:// protocol.