2014-05-14 3 views
0

.htaccess 파일을 사용 중입니다. 나는 다음과 같이 내 도메인을 재 작성하려면 :.htaccess의 URL 마스킹

www.example.com

www.example.com/en/에 내가

RewriteRule ^http://example.com/en/ index.php 

내/EN/폴더가 존재하지 않습니다

같은 시도, 나는 그것을 만들려고하지 않습니다. 사용자가 www.example.com을 클릭하면 www.example.com/en/이 표시되고 루트에서 색인 페이지가로드됩니다.

그러나 원하는 결과를 제공하지 못합니다.

이것이 가능합니까?

+0

두 가지 가능성 : 1) mod_rewrite가 활성화되어 있습니까? 2)이 규칙과 충돌 할 수있는 다른 규칙이있다. (즉, 전체'.htaccess' 파일을 보여줍니다.) 3) mod_rewrite에 대한 로깅을 켭니다 ([docs here] (http://httpd.apache.org). /docs/2.0/mod/mod_rewrite.html#rewritelog)) 그리고 무엇을하는지보십시오. 마지막으로, "나에게 욕망을주는 것이 아닙니다."- 당신에게주는 것은 무엇입니까? 문제를 진단하는 데 도움이 될 수 있기 때문에 해당 정보를 공유하십시오. – Kryten

+0

동일한 htaccess에 정의 된 다른 모든 URL 다시 쓰기가 정상적으로 작동합니다. 이것이 유일한 남은 문제입니다. –

답변

0

당신이 보여준 다시 쓰기 규칙은 http://example.com/en/ 일치하고 index.php 변경을 - 그것은 http://www.example.com으로 아무것도하지 않기 때문에, 그것은 당신에게 당신이 찾고있는 재 작성을 제공하지 않습니다.

나는 재 작성 규칙에 전문가는 아니지만, 그러나 당신이 당신이 열거 한 일 전에 새 규칙을 필요로 나에게 보인다

RewriteRule ^http://www.example.com http://www.example.com/en/ 
이 규칙의 순서가 중요 할 것입니다

- 당신 이 규칙을 먼저 적용한 다음 위에 나열한 규칙을 준수해야합니다.

또한 다른 재 작성 규칙 또는 조건과 상호 작용할 수도 있습니다. 작동하지 않는 경우이를 조사하십시오.

나는 이것을 reading the documentation에 있습니다. 이러한 것들이 어떻게 작동하는지에 대한 자세한 정보가 있는지 확인하십시오.