У меня есть приложение с интерфейсом на vuejs, которое работает через laravel api на бэкэнде. А для авторизации использую Laravel Passport. Когда я запускаю приложение через интегрированный веб-сервер laravel (artisan serve) на localhost: 8000, оно работает без ошибок. Но когда я переместил его на свой локальный веб-сервер, у меня возникли проблемы.
Когда я пытаюсь сделать почтовый запрос
axios.post('http://project.local/oauth/token', data)
Я получаю http-ошибку 405 (метод запрещен). Я исключил все маршруты из CSRF-токена, добавил заголовки CORS, и все равно это не работает. Как я сказал на localhost: 8000, он работает хорошо.
Информации об этой проблеме я не нашел и не мог справиться самостоятельно. Кто-нибудь знает что-нибудь об этом? Заранее спасибо.
Моя конфигурация nginx
server {
listen 80;
root /home/me/project/frontend/dist;
index index.html index.php;
server_name project.local;
access_log off;
error_log /home/me/project/backend/error.log notice;
location / {
index index.html;
try_files $uri $uri/ /index.html?$args;
}
location /api/v1 {
root /home/me/project/backend/public;
rewrite ^/api/v1/(.*)$ /$1 break;
try_files $uri $uri/ /index.php?$query_string;
}
location /oauth/token {
root /home/me/project/backend/public;
rewrite ^/oauth/token/(.*)$ /$1 break;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
set $newurl $request_uri;
if ($newurl ~ ^/api/v1(.*)$) {
set $newurl $1;
root /home/me/project/backend/public;
}
if ($newurl ~ ^/oauth/token(.*)$) {
set $newurl $1;
root /home/me/project/backend/public;
}
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param REQUEST_URI $newurl;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
}
location ~ /\.ht {
deny all;
}
}






Может это тайник! Я как раз решил эту проблему и оказался кеш облачная вспышка
кэшировал все файлы как index.html
@samayo Дело не в этом. Я просто изменил имена для stackoverflow и допустил синтаксическую ошибку