昨天我曾问如何确保我的通配符路径不匹配任何Laravel新星路线,并迅速找到了解决办法。
现在新星路由会被忽略,因为我想要的。但是,这也似乎甩开其他方式匹配。下面是定义的路径:
Route::get('/{seite}/{zweit?}/{dritt?}', 'PagesController@anyPage')
->where('seite', '^(?!nova).*$');
/博客 - >应匹配和不匹配
/博客/新闻 - >应该匹配,但不和导致404
/博客/新闻/后123 - >同上
如果我从路由定义中移除正则表达式,所有的这些例子是匹配的,但后来我当然不能再访问新星。
任何想法可能是什么造成的?
因为正则表达式是捕捉URI中的/
字符这是可能的。所以/blog/news
由seite参数抓获。这将是有趣的,看看你的PagesController和全routes.php文件,如果你可以分享。