2016-12-11 6 views
0

URL의 별칭에 문제가 있습니다.컨트롤러/세부 정보와 함께 urlmanager yii2를 사용하는 방법? alias = abc-xyz

내가 설정

'<controller:\w+>/<action:\w+>/<alias:\w+>'=>'controller/action', 

하지만 URL로 사용하려고

RewriteEngine on 
# If a directory or a file exists, use it directly 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
# Otherwise forward it to index.php 
RewriteRule . index.php 

여전히 링크

controller/detail/abc-xyz 
에게 접근하지 링크

controller/detail?alias=abc-xyz 

에 액세스 htaccess로 파일

이유를 모르겠습니다.

도와주세요. 감사합니다,

답변

1

정규식 속기 문자 \w 일치 [A-Za-z0-9_] 그래서 당신은 볼 수 여기에 단일 - (물론, 범위에 대한 있지만이있는 경우에만 다른 것입니다)이 없습니다. regex에 대한 자세한 내용은 www.regular-expressions.info입니다.

이 같은 규칙을 수정

'<controller:\w+>/<action:\w+>/<alias:[\w\-]+>'=>'controller/action', 
+0

정말 고마워요,이 규칙은 변경 필요 : ''<컨트롤러 : \ + w>//<별칭 : \ \ w -] +> ' => '/', ' –