2012-11-14 2 views
-1

일부 예외를 제외하고 URL을 다시 작성 :
page.com?c=example1&a=example2
하지만 난이처럼하고 싶은 : 사용자가
page.com/example1/example2htaccess로, 나는이 같은 URL이

그러나 경우 page.com/public/...는하지 않는다 내가 디렉토리 public/css/smth.css을 가지고 있고, 내가 그것을 액세스하려고 할 때, 그것은 내가 원하는 것이 아닌 page.com?c=public&a=css/smth.css...과 같은 것으로 바뀐다.

public으로 시작하지 않는 URL에 대해서만 어떻게합니까?

나의 현재의 .htaccess :이 도움이

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^([^/]+)/([^/]+) index.php?c=$1&a=$2 
+0

현재 htaccess로 파일이 무엇을 함께해야한다 ? –

+1

의견을 게시하는 것보다 의견을 편집하십시오. –

답변

3

귀하의 .htaccess 파일은 다음과 같이 볼 필요가있다 : 나는 위의 테스트하지 않았습니다

# Follow symbolic links 
Options +FollowSymlinks 

# Turn on the rewrite engine 
RewriteEngine On 

# Set the general first level rewrites 
RewriteRule ^(.+)/((?!public).*)/(.+)/?$ $1.php?c=$2&a=$3 [NC] 

을하지만, 오른쪽 라인

+0

고마워! '((?! public). *)'내가 정확히 필요한 것이었다 –

+0

@BenasRadzevicius 걱정하지 마세요. 행복하게 :-) –

2

희망!

RewriteRule ^page.com/public/([a-zA-Z0-9-]*)/$ page.com?c=public&a=$1 
RewriteRule ^page.com/([a-zA-Z0-9-]*)/([a-zA-Z0-9-]*)/$ page.com?c=$1&a=$2 
RewriteRule ^page.com/([a-zA-Z0-9-]*)/([a-zA-Z0-9-]*)$ page.com?c=$1&a=$2 
+1

그의 page.com/public/ 요구 사항은 무엇입니까 –

+0

규칙을 위에 추가하십시오 .RewriteRule^page.com/public/([a-zA-Z0-9 -] *)/$ page.com?c=public&a = $ 1 –

+0

@bikashshrestha 왜 3 라인에서 이것을 하나 할 수 있을까요? –