Nginx 404 не найден, когда модуль доступа на yii2

У меня есть проект API с yii2 и nginx, моя структура папок:

root
-- modules
----v1
------- controllers
----------- RefCityController.php
------- models
------- views

настройка на web.php

'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
],
],

на nginx я положил свое приложение API папки со структурой /var/www/html/api

моя корневая папка /var/www/html

конфигурация nginx

server {
listen 80;
root /var/www/html;
index index.php index.html index.htm;
# Make site accessible from http://localhost/
server_name mydomain.co.id;
charset utf-8;
location / {
try_files $uri $uri/ /web/index.php$is_args$args;
}

location /api/ {
alias /var/www/html/api/;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}

когда я пытался получить доступ к своему модулю, как:
http://mydomain.co.id/api/web/index.php/v1/ref-city/index

всегда показывать 404 Не найдено

Я думаю, что я пропустил с настройкой маршрута nginx, потому что этот код работает на Apache

1

Решение

Спасибо Мухаммеду за ваш ответ, я нашел решение, отредактировав конфигурацию nginx, как это


местоположение / API / {
if (! -e $ request_filename) {
переписать ^ / (. *) /web/index.php?r=$1 last;
}
}

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]