我正在使用 Laravel (10) 和 Nova (4.31)。在我的开发环境我可以毫无问题地登录到nova但是在我的生产环境登录不起作用 - 单击“登录”后没有任何反应(尽管显示了登录屏幕)。
网络流量显示,通过单击“登录”发出的 XHR 请求返回 404:
POST https://example.com/nova/login -> 404.
所以我还查看了注册的路线,这些路线看起来也是正确的:
POST nova/login ..................... nova.login › Laravel\Nova › LoginController@login
目前我不知道是什么原因导致了这个问题。在我的开发环境中,一切正常,Nova 配置没有任何差异。生产服务器前面也没有其他层(例如代理或 CDN),这可能是导致该错误的原因。
所以我想知道您是否知道我可以在哪里开始进一步调查以找出该问题的原因。
经过多次尝试和错误,我发现了问题: 我使用 Laravel Forge 进行部署和服务器管理。我在 /nova 路径中添加了一条 .htaccess 规则。我没有调查 Forge UI 后面创建的 nginx 设置,但看起来 GET 授权有效,但 POST 生成 404...
我已禁用安全规则,现在登录可以按预期工作。