raster-service-1 | [php-fpm:access] 127.0.0.1 - 05/Jun/2024:02:41:34 +0000 "GET /index.php" 500 /app/index.php 0.497 2048 0.00%
raster-service-1 | NOTICE: PHP message: PHP Warning: require(//vendor/autoload.php): Failed to open stream: No such file or directory in /app/index.php on line 31
raster-service-1 | NOTICE: PHP message: PHP Fatal error: Uncaught Error: Failed opening required '//vendor/autoload.php' (include_path='.:/usr/local/lib/php') in /app/index.php:31
raster-service-1 | Stack trace:
raster-service-1 | #0 {main}
raster-service-1 | thrown in /app/index.php on line 31
raster-service-1 | 10.0.0.254 - - [05/Jun/2024:02:41:34 +0000] "GET / HTTP/1.1" 500 5 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 OPR/109.0.0.0 (Edition Yx GX)"
PHP+NGINX заводятся в среде rootless docker, каталог app проброшен как doker volume на каталог public приложения на хост машине. Вебсервер видит и читает каталог, но.. Для апачи я использовал хитрость, делал симлинк на каталог public и в конфиге прописывал FollowSymlink, и все отлично работало. В nginx такой прием не сработал.
В случае с nginx такой вариант не проходит. PHP не может прочитать каталог autoload. Возможно в самом скрипте ошибка при указании пути? Ведь разработка велась на win os.
define('APP_ROOT', dirname(__DIR__));
require APP_ROOT . '/vendor/autoload.php';
p.s. но по всей видимости php просто не может перейти в каталог, который находится за WEB_DOCUMENT_ROOT, который у меня установлен как /app (значение по умолчанию). Использую webdevops/php-nginx.