문제
쿠키, SEO 등 다양한 이유로 단순함을 유지하기 위해 Apache가 자동으로 모든 요청을 리디렉션하도록 하고 싶습니다. http://www.foobar.com/anything 에게 http://foobar.com/anything.내가 생각해 낼 수 있는 최선의 방법은 mod_rewrite 기반의 괴물입니다. "도메인 ABC에 대한 모든 요청을 XYZ로 리디렉션"이라고 말할 수 있는 쉽고 간단한 방법이 있습니까?
추신:나는 찾았다 이 다소 관련된 질문, 그러나 이는 IIS용이며 내가 원하는 것과 반대입니다.또한 여전히 복잡합니다.
해결책
다음과 같이 쉽습니다.
<VirtualHost 10.0.0.1:80>
ServerName www.example.com
Redirect permanent / http://example.com/
</VirtualHost>
필요에 따라 호스트 이름과 IP를 조정하세요 :)
다른 팁
사이트 간 복사가 더 간단하고 쉬워졌습니다.
RewriteCond %{HTTP_HOST} ^www\.(.+)$
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
우리 모두가 그렇듯이 mod_rewrite를 사용하면 매우 간단합니다. ;)
이것은 내 라이브 웹사이트의 .htaccess의 일부입니다.
RewriteEngine on
# Catches www.infinite-labs.net and redirects to the
# same page on infinite-labs.net to normalize things.
RewriteCond %{HTTP_HOST} ^www\.infinite-labs\.net$
RewriteRule ^(.*)$ http://infinite-labs.net/$1 [R=301,L]
일부 mod_rewrite 규칙과 함께 .htaccess 파일을 사용하십시오.
RewriteEngine On
RewriteRule ^www.SERVERNAME(.*) http://SERVERNAME$1 [L,QSA]
구문이 올바른지 잘 모르겠습니다. $1
거기에 있지만 잘 문서화되어 있습니다.L은 위치를 보냅니다.헤더를 브라우저에 추가하고 QSA는 쿼리 문자열 추가를 의미합니다.
mod_rewrite 사용에 대해 언급하셨으므로 .htaccess에 간단한 규칙을 제안하겠습니다. 제 눈에는 그렇게 이상해 보이지는 않습니다. :)
RewriteCond %{HTTP_HOST} ^www\.foobar\.com$ [NC]
RewriteRule ^(.*)$ http://foobar.com/$1 [L,R=301]
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]
그러면 효과가 있을 것입니다.
제휴하지 않습니다 StackOverflow