2010-02-13 7 views
0

이 다시 쓰기 규칙이 하위 도메인 (dev.domain.co.uk)에서 작동하지만 최상위 도메인 (domain.co.uk)에 배치되지 않은 이유에 대한 아이디어가 없습니다. 500 내부 서버 오류로 실패합니까?htaccess 문제 최상위 도메인의 다시 쓰기 규칙

ReWriteEngine on 
ReWriteCond $1 !^(images|img|stylesheets|db|themes|index\.php) [NC] 
RewriteRule ^(.*)$ /index.php/$1 [L] 

두 번째 줄의 괄호 사이에있는 파일을 제외하고는 모든 파일을 index.php 파일처럼 처리합니다.

하위 도메인에서 사용하면 ExpressionEngine URL에서 index.php가 작동하고 제거됩니다. 따라서

www.dev.domain.co.uk/index.php/about/는 www.dev.domain된다/약/- 많은 감사 훨씬 좋네요

어떤 도움이나 제안 - 감사합니다.

+0

그래서'/ index.php /'를 추가하거나'/ index.php /'를 제거 하시겠습니까? RewriteRule이이를 추가하고 있기 때문에 일부 ExpressionEngine에 대해 이야기하고 있습니다. 그렇다면 재 작성이나 ExpressionEngine에서 문제는 어디에 있습니까? – Messa

+0

코드 예를 편집했습니다. 미리보기를보고 다음 질문을하기 전에 코드 강조 표시를 사용하십시오.) – AndiDog

+0

오류 로그에 무엇이 기록되어 있습니까? – Gumbo

답변

0

여기서 추측하고 있지만 하위 도메인보다는 도메인 이름을 사용할 때 디렉토리 구조가 다른 것일 수 있습니다. URL이 실제 파일 경로와 직접 관련이없는 경우 modrewrite는 실패합니다. rewritecond 전에 이것을 추가하여베이스 URL을 명시 적으로 만들 수 있습니다.

RewriteBase/