我已经在 Yii2 应用程序上启用了干净的 URL,但我似乎无法将参数传递给操作。
我期望这样:
本地主机/应用程序/网络/a/b/c/d
映射到以下内容:
AController->actionB($c, $d)
这并没有发生。
这是我的 .htaccess:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
我的 web.php 的相关部分:
'urlManager' => [
'class' => 'yii\web\UrlManager',
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => array(
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
),
],
据我了解,规则应该类似于:
'<controller:\w+>/<action:\w+>/<c>/<d>' => '<controller>/<action>'
因此,如果您尝试访问localhost/app/web/a/b/c/d
,Yii 会调用:
class AController extends Controller
{
public function actionB($c, $d)
{
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)