2012-07-24 2 views
1

안녕하세요 mod_rewrite와 관련하여 다음 문제가 : 나는 여전히 다음과 같은 문제에 대한 RewriteRule의 찾고 있어요 지금mod_rewrite를 RewriteRule의

example.php라고하는 페이지를 구축해야

:

를 때문에이 사용자가 예를 site.com/beispiel.php

무엇 w를 위해 입력되는 RewriteRule의를하고 싶은 다른 언어 만 페이지 example.php의 동일한 내용의

독일어의 example과 같은 단어 일 수 있습니다. 그래서 한 페이지 만 있습니다. 그러나 가상의 URL site.com/beispiel.php은 같은 내용이 될 것입니다. 난 정말 감사하겠습니다이 문제를 해결하는 방법을 아는 사람이 그렇다면

. 고마워.

답변

0

나는 그것에 대해 생각 : 다음

www.yoursite.com/translate.php?translated_language=keyword_from_script 

에 PHP에서 리디렉션 translate a PHP $string using google translator API

같이 당신이 구글 번역기를 사용하는 경우

는 그런 다음에 마지막으로 답에서의 mod_rewrite를 사용 매개 변수, 작동해야합니까?

+0

좋아, 번역은 문제가되지 않습니다. 나는 또한 내 DB에 테이블을 만들 수 있습니다. 문제는 mod_rewrite를 사용하는 방향 전환입니다. 내가 작동하지 않는 'RewriteRule^beispiel $/example'을 가지고있다. – bonny

+0

example.php에 301 개의 리디렉션 세트를 만든다. – mlishn

0

리디렉션 및 내부 리디렉션은 다른 두 가지입니다. 코드와

는 HTTP 리디렉션 (302) 또는 (301)는 여러 HTTP 요청을 의미하고, 사용자는 자신이 /example.php로 리디렉션 된 끝 부분에 표시됩니다. 내부 리디렉션은 사용자가 알지 못하는 사이에 요청 된 파일 A에 대해 서버에서 하나의 파일 B를 제공하는 것을 의미합니다.

내부 리디렉션 모드 - 재 작성의 규칙이 필요하지 않습니다. AliasAliasMatch 지시문을 사용하여 요청한 일부 파일을 실제 파일에 매핑 할 수 있습니다.

Alias /beispiel.php /path/to/my/docroot/example.php 

외부 리디렉션은 리디렉션 및 RedirectMatch에 지시어를 사용하여, mod_rewrite를없이 수행 될 수있다.

지금 당신은 또한 (& 외부, 내부) 리디렉션의 두 가지 유형을 수행 할 수 mod_rewrite를 사용할 수 있습니다. 외부 리디렉션으로

# internal alias 
RewriteRule ^beispiel.php$ /path/to/my/docroot/example.php [L] 
# Or external redirection, with a R tag 
RewriteRule ^beispiel.php$ example.php [L, NC, R=302] 

302 리디렉션을 처리하는 일부 rewriteRiles을 시도하여 시작 qlways. 작동 될 때 브라우저 저장소 301 결과로 301 리디렉션을 사용할 수 있으며 다시 시작하기 전에 더 이상 묻지 않습니다.

수행 할 rediirection의 큰 숫자가 있고 (즉, 당신이 진짜 아파치 구성 파일을 편집 할 수 있습니다) .htaccess 파일에 붙어 있지 않으면 속도 업 귀하의 RewriteRules를 RewriteMap에 모습을 가질 수 있습니다.