2010-04-06 9 views
1

나는 작성하지 않은 사용자 정의 빌드 된 CMS에서 실행중인 클라이언트의 웹 사이트를 인계받습니다. 나는 보통 .htaccess 파일을 엉망으로 만들지 않습니다. 왜냐하면 저는 많은 호스팅이 IIS에 있거나, WordPress를 CMS로 사용했기 때문에 .htaccess 파일을 망칠 필요가 없으므로 걱정하지 않아도됩니다. 파일 내용은 다음과 같습니다.RewriteCond and RewriteRule newbie

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ framework.php?%{QUERY_STRING}&resource=$1& [L] 

나는 무엇을하는지 (framework.php 파일을 통해 모든 요청을 보냄) 얻을 수 있습니다. 클라이언트는 자신의 사이트에 추가 된 WordPress 블로그를 원합니다. 나는 그것을/blog/폴더에 넣을 것이다. 문제는 .htaccess 파일의 규칙과 조건을 다시 작성하기 때문에 내가 가서 시도 할 때마다/블로그/다른 CMS 괴물이 나오려고하기 때문입니다. 내 질문은/블로그/폴더에/블로그/폴더에 대한 모든 요청을 보내려면 아파치에게 알려주지 만, 다른 모든 요청을 지금처럼 framework.php 파일을 통해 파이프하도록 규칙/cond를 작성하는 방법입니다. 어떤 도움을 주셔서 감사합니다, 감사합니다!

+1

Btw, RewriteRule 오른쪽 부분의 명시적인 % {QUERY_STRING}은 (는) QSA 플래그로 바꿔야합니다. – wRAR

답변

1

당신은 주요 규칙에 RewriteCond을 추가하여 /blog 링크를 무시하는 주요 htaccess로 파일을 말할 수 있어야 :하는 /blog 링크가 framework.php로 전송되지 않습니다

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} !^/blog(/?) 
RewriteRule ^(.*)$ framework.php?%{QUERY_STRING}&resource=$1& [L] 

및/blog 디렉토리에서 정상적으로 서비스해야합니다. 해당 디렉토리에있는 Wordpress .htaccess 파일은 정상적으로 호출되며 거기에서 Wordpress 링크를 처리 할 수 ​​있어야합니다.

+0

감사합니다 zombat, 그게 효과가! – user64718

+0

문제 없어요 :) [15 char limit filler] – zombat