2011-08-08 9 views
4

mod_rewrite에 약간의 딜레마가 있습니다.
가 어떻게 다음 사항을 결정하는 규칙을 작성하려면 어떻게해야합니까 :PHP/Apache : .htaccess로 규칙을 다시 작성하십시오.

내가 검색하면 /EN/I가이를 다시 할 페이지/페이지 : & 페이지 엉 =
의 index.php 언어 =/페이지

난 그냥 /페이지을 검색하지만 나는이를 다시 작성하려면 :
의 index.php 페이지 =/페이지

이것이 가능합니까?

편집 :
/페이지가 그냥 무작위 동적 페이지 이름, 그것은 aswell 어떤을 수 있습니다.

/se == 문자열, 2 자 이상>/page -> index.php? lang = se & page =/page와 같은 규칙이 필요하며 탐색 페이지/페이지 인 경우 ? 페이지 =/페이지 == 이상이 개 문자를 그/페이지를 발견하고되는 index.php 다시

Edit2가 :

 

    RewriteEngine On 
    RewriteBase/

    ## Check if its not a filename or dirname 
    RewriteCond %{REQUEST_FILENAME} !-l 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 

    ## Rewrite rules 
    RewriteRule ^(.{2})/(.*)$ index.php?lang=$1&page=$2 [L] 
    RewriteRule ^(.*)$ index.php?page=$1 [L,QSA] 

답변

0
RewriteRule ^page$ index.php?language=en&page=/page/page [L] 
RewriteRule ^page/ index.php?language=en&page=/page [L] 
0

이 시도 : 내 질문에 대한 답변을 찾을 수

RewriteRule ^(.*)/(.*)(/.*)$ index.php?language=$1&$2=$3 [L] 
RewriteRule ^page$ index.php?page=/page/page [L] 
+0

안녕하세요, :-) 위의 내 편집을 참조하십시오 다른 사람이 같은 일을해야하는 경우 다음은 규칙입니다 – Fredrik

3

나는 스스로 해결할 수있었습니다!

 
    RewriteEngine On 
    RewriteBase /

    ## Check if its not a filename or dirname 
    RewriteCond %{REQUEST_FILENAME} !-l 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 

    ## Rewrite rules 
    RewriteRule ^(.{2})/(.*)$ index.php?lang=$1&page=$2 [L] 
    RewriteRule ^(.*)$ index.php?page=$1 [L,QSA] 
관련 문제