2014-02-22 4 views
0

이 질문은 여러 번 질문을 받았지만 해결되었습니다. 일반적인 해결책이 작동하지 않는 경우가 있습니다.htaccess로 디렉토리 리디렉션

시도 및 참 : RedirectMatch 301 .*/author/.*$ /은 한 서버에서만 작동하지만 다른 서버에서는 작동하지 않습니다.

즉, WordPress 작성자 보관 파일에 대한 모든 요청을 사이트 앞쪽으로 리디렉션해야합니다. 다른 곳에서는 사람들이 왜 그 일을하고 싶어하는지 물었다. 문제의 범위를 벗어나지 만 저자 이름을 숨기는 것입니다. CMS에는 체계적인 대안이 있지만 실제로 작성자 이름 (홈페이지로 리디렉션 됨)과 해당 작성자 (404 페이지를 찾을 수 없음)에 따라 다르게 작동합니다. 그것은 너무 많은 단서입니다. 저자에게 별명을 붙이기위한 다른 방법이 있지만, 모두 누설되었습니다.

그래서 우리는 위의 코드를 하나의 Apache 서버에있는 모든 사이트에서 사용했으며 챔피언처럼 일했습니다. on nginx 서버에서 많은 버전의 Redirect 및 Rewrite를 사용해 보았습니다. 공유 호스팅 제공 업체는 별 도움이되지 않았습니다. 차단

필요 http://domain.com/blog/author/name

및 이외로 http://domain.com/author/name

:에 대해 어떻게

RedirectMatch 301 .*/author/.*$/
+0

이 다른 서버 설정에 AllowOverride fileinfo''이 당신의 htaccess 파일 (그리고'RedirectMatch')이 에서? –

+0

이 공유 서버를 깨끗하게 검사 할 수는 없지만 'allowoverride fileinfo' 또는'all'이 설정되어 있음을 제안하는 다른 .htaccess 다시 쓰기 규칙 (예 :'RewriteRule. /index.php [L]')이 작동합니다. – zyghi

+0

다른 규칙이있는 경우 해당 규칙이 리디렉션에 영향을 미치지 않았는지 확인하십시오 (mod_alias (redirectmatch)가 mod_rewrite (rewriterule)와 다른 모듈이므로 동일한 요청에 모두 적용됨 *) –

답변

0

:

RedirectMatch 301 ^/blog/author/ http://www.your-domain.com/ 
RedirectMatch 301 ^/author/ http://www.your-domain.com/ 
+0

당신은 그렇게 생각 하겠지만, 그렇지는 않습니다 ... – zyghi