页面已过期 419 在生产时出现。我尝试运行php artisan clear:cache、php artisan config:cache、php artisan key:generate,并使用相同的域更改SESSION_DOMAIN,但页面仍然错误
如果我停用 CSRF 中间件,它没有错误,但我无法转到下一页。
我可以在本地运行它,但是当我在本地使用生产数据库时,会出现相同的错误页面。
我通过从主要的blade.php 模板中删除这个元来修复它。
<meta name="csrf-token" content="{{ csrf_token() }}">
由于惯性页面上的这个警告:
如果您使用 Laravel,请务必从项目中省略 csrf-token 元标记,因为这将阻止 CSRF 令牌正确刷新。
我认为 419 PAGE EXPIRED 可能存在两个或更多问题。
我无法通过更改 CRSF 令牌、删除它或禁用它来让它工作。
我认为实际原因与存储 SESSION_DRIVER 数据的权限有关。
默认情况下,.env 具有 SESSION_DRIVER=database。如果您的文件权限正确,则将数据库存储更改为文件存储 SESSION_DRIVER=file 有效。正确设置文件权限后,如果您愿意,请改回 SESSION_DRIVER=database。
我使用的是 SQLite3,唯一有效的方法是数据库位于 ~/laravel/stoarage/sqlite3.database