2009-12-11 7 views
0

Apache에서 실행되는 일부 사이트를 Lighttpd로 마이그레이션하려고합니다.Apache RewriteCond to Lighttpd

아무도 날이 Lighttpd에 대한 동등한 규칙에이 재 작성 규칙을 변환하는 데 도움이 수 :

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] 

나는이 Lighttpd 다시 쓰기 설명 (http://redmine.lighttpd.net/wiki/1/Docs:ModRewrite)를 읽고 있어요하지만이 특정 규칙을 변환하는 방법을 이해하지 못했다.

감사 direcotyr로 이동하지 않습니다 아파치 규칙

답변

1

당신이 use RewriteCond to take any request 목록을 많이 (! -d) 어느 또한 파일로 이동하지 않습니다 (! -f)과 리디렉션 통과 URL 데이터를 매개 변수 "url"로 index.php에 저장합니다. 이 규칙이 (L)과 일치하면 다른 CGI 인수 (QSA)를 보존하고 더 이상의 규칙을 일치시키지 않습니다.

그래서 http://yourserver.org/something-silly는 부분적으로이 구현 http://yourserver.org/index.ph?url=something-silly&q=search-terms

Lighttpd has url.rewrite-if-not-file에 갈 것 http://yourserver.org/index.ph?url=something-sillyhttp://yourserver.org/something-silly?q=search+terms에 갈 것이지만,이 디렉토리의 경우는 URL을 다시 작성합니다. 따라서 규칙을 추가하여 알려진 올바른 디렉토리로 이동하는 URL을 특별히 다시 작성하지 않아야합니다.