1차 도메인 이름이 taobao.com이라고 가정
각 매장에는 2차 도메인 이름이 있습니다. Baobao라는 매장이 있는데 도메인 이름은 baobao.taobao.com
입니다.
각 매장은 2차 도메인 이름을 통해 접속되며 taobao.com/shop/baobao
즉, 많은 수의 상점이 있고 도메인 이름이 xxx.taobao.com이라고 가정하면 각 상점에는 2차 도메인 이름이 있습니다
taobao.com/shop/xxx
DNS *A 기록은 모두 이 시스템을 가리킵니다.
Apache mod_rewrite를 사용하여 구현하는 경우 구성을 어떻게 작성합니까?
다른 방법은 없나요?
Nginx는 아마도 다음과 같이 작성되었을 것입니다:
으아악Apache는 다음과 유사합니다:
으아악목적
) /test/$1$2 #/test는 www.test.com/
뒤에 있는 디렉터리입니다.abc.test.com에 액세스하면 www.test.com/test/abc로 이동하며 브라우저 주소에 abc.test.com 주소가 표시됩니다.
방법
아파치 구성 파일에 새로운 가상 호스트를 추가하세요
이름VirtualHost :80
서버이름 www.test.com
ServerAlias *.test.com
DocumentRoot /var/www/test
rewriteengine 켜짐
rewritecond %{HTTP_HOST} [^.]+.test.com$
재작성 ^(.+) %{HTTP_HOST}$1 [C]
rewriterule ([^.]+).test.com(.
그리고 디버그를 켜고 로그를 볼 수 있나요?
아파치 구성을 추가했습니다:
RewriteRule ^/([-a-z0-9]+).xiaocaowangluo.com/?$ http://xiaocaowangluo.com/shop/$1/ [L]
여기에는 두 개의 연결이 있습니다 http://xiaocaowangluo.com/shop/test/ http://test.xiaocaowangluo.com/ 이 구성이 추가되었습니다.
http://test.xiaocaowangluo.com/ 여전히 http://xiaocaowangluo.com/shop/test/로 이동할 수 없습니다. 다른
을 추가해야 합니까?나를 위한 또 하나
RewriteCond %{HTTP_HOST} ^[^.]+.xiaocaowangluo.com$
의 RewriteEngine RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+).xiaocaowangluo.com(.*) /www/xiaocaowangluo/shop/$1$2
이 구성도 작동하지 않습니다. 도와주세요.
apache는 이렇게 쓸 수 있습니다
으아아아Appconfig:
http://www.aips.me/sae-bound-domain-subdirectory.html