在web.php
我有以下代码:
'urlManager' => [
'class' => 'yii\web\UrlManager',
// Disable index.php
'showScriptName' => false,
// Disable r= routes
'enablePrettyUrl' => true,
'rules' => array(
'calc' => 'site/calc',
),
],
我希望允许用户访问example.com/calc
但不允许访问example.com/site/calc
。我怎么能用更少的努力正确地做到这一点?换句话说,现在可以使用两种选项 - " site/calc
"和" calc
"我想禁用" site/calc
"。
答案 0 :(得分:1)
尝试将enableStrictParsing添加到UrlManager配置,如下所示
'urlManager' => [
'class' => 'yii\web\UrlManager',
// Disable index.php
'showScriptName' => false,
// Disable r= routes
'enablePrettyUrl' => true,
'enableStrictParsing' => true,
'rules' => array(
'calc' => 'site/calc',
),
],
在这种情况下,如果没有匹配请求的规则,则认为它是错误的。