我在vuejs上有前端的应用程序,它通过后端的laravel api工作。我使用Laravel Passport进行授权。 当我通过localhost:8000上的集成laravel web服务器(artisan serve)启动应用程序时,它运行良好,没有任何错误。 但当我把它移到我的本地网络服务器时,我遇到了一些问题。
当我尝试发布帖子时
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;
}
}
答案 0 :(得分:0)
也许是一个缓存!我刚刚解决了这个问题,结果是缓存cloudflare
将所有文件缓存为 index.html