2011-01-18 2 views
0

host.com/index.php?controller/method.htaccess를위한 간단한 정규식?

로 변환하는 프레임 워크에 대한 정규 표현식이 있습니다 :

이제 이것을 다음과 같이 변환해야합니다.
host.com/controller/method ->host.com/index.php?controller=$1&method=$2

htaccess 내 에서처럼 정규 표현식과 일치합니까?

답변

0

이와 비슷한? 방금 대신 무엇이든 하나 개의 경로 세그먼트를 원하는 경우

RewriteRule ^(\w+)/(\w+)$ /index.php?controller=$1&method=$2 [L] 
+0

감사합니다. 그것이 나에게 가장 이해하기 쉽기 때문에 나는 받아 들일 것이다. –

0

, [^/] 대신 . 사용

RewriteCond $1 !=index.php 
RewriteRule ^([^/]*)$ /index.php/$1 [L] 

그리고 두 번째 요구 사항에 대한을 : 여기

RewriteCond $1 !=index.php 
RewriteRule ^([^/]*)/([^/]*)$ /index.php?controller=$1&method=$2 [L,QSA] 

당신은 또한 고려해야합니다 * (0 이상) 대신 한정자 + (하나 이상)을 사용하십시오.

+0

나는 처음에는 요구 사항이 없다고 생각한다. 그것은 OP를 위해 잘 작동하는 것 같습니다. – SilentGhost

+0

감사합니다. 나는 이것을 보게 될 것이다. –