Я пытаюсь установить проект на Nginx (у меня он был на Apache 2), и у меня есть некоторые проблемы при настройке Nginx блока сервера.
Мой проект содержит интерфейс на Angular 1.6 в папке «app» и серверная часть Slim v2 в папке «ws».
Вот мой конфиг:
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name XXXX;
ssl_certificate XXX;
ssl_certificate_key XXX;
location / {
root /home/XXX/www/myproject/app;
try_files $uri $uri/ /index.html =404;
}
location /ws/ {
root /home/XXX/www/myproject/ws/public;
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}
}
Фронт, кажется, работает, но когда Я пытаюсь получить доступ к веб-службам в / ws / test, у меня есть эта ошибка в журналах nginx:
2020/03/20 10:14:10 [error] 21734#21734: *76 FastCGI sent in stderr: "Unable to open primary script: /usr/share/nginx/html/index.php (No such file or directory)" while reading response header from upstream, client: XXX, server: XXX, request: "GET /ws/test HTTP/2.0", upstream: "fastcgi://unix:/run/php/php7.3-fpm.sock:", host: "XXX"
Я перепробовал несколько конфигураций для значения "SCRIPT_FILENAME", но проблема все еще та же.
Что не так в моей конфигурации?
Спасибо