Конфигурация Nginx с Laravel API + vuejs

У меня есть приложение с интерфейсом на 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;
    }
}

@samayo Дело не в этом. Я просто изменил имена для stackoverflow и допустил синтаксическую ошибку

Sombrero 15.04.2018 13:41
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
1
1
1 373
1

Ответы 1

Может это тайник! Я как раз решил эту проблему и оказался кеш облачная вспышка

кэшировал все файлы как index.html

Другие вопросы по теме