84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
假設一級網域是 taobao.com 每個店舖有一個二級域名,有一個店鋪叫寶寶,他的域名是 baobao.taobao.com 每個店舖透過二級域名訪問,轉向 taobao.com/shop/baobao
也就是說有大量的店,每家店都有一個二級域名,假設域名是xxx.taobao.com 需要轉向 taobao.com/shop/xxx
DNS的* A 記錄都指向這台機器。 如果使用apache mod_rewrite 實現的話,配置如何寫?
另還有其他方式沒?
Nginx的寫法大概是這樣的:
server { listen 80; server_name xxx.taobao.com; if ( $http_host ~* “^(.*)\.taobao\.com$”) { set $domain ; rewrite ^(.*) http://taobao.com/$domain/ break; } }
Apache類似:
RewriteRule ^/([-a-z0-9]+)\.taobao\.com\/?$ http://taobao.com// [L]
目的 當造訪abc.test.com跳到www.test.com/test/abc ,瀏覽器位址會顯示abc.test.com位址。 方法 在apache的設定檔裡新增虛擬主機 NameVirtualHost :80 ServerName www.test.com ServerAlias *.test.com DocumentRoot /var/www/test rewriteengine on rewritecond %{HTTP_HOST} [^.]+.test.com$ rewriterule ^(.+) %{HTTP_HOST}$1 [C] rewriterule ([^.]+).test.com(.) /test/$1$2 #/test是www.test.com/後邊的目錄
另外可以打開一下你的debug,看一下日誌麼?
我增加了apache設定: 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/ 是不是要需要增加其他的
另我用 RewriteEngine on RewriteCond %{HTTP_HOST} ^[^.]+.xiaocaowangluo.com$ RewriteRule ^(.+) %{HTTP_HOST}$1 [C] RewriteRule ^([^.]+).xiaocaowangluo.com(.*) /www/xiaocaowangluo/shop/$1$2
這個配置也不行,求大神。
apache 可以這樣寫
RewriteRule ^/([-a-z0-9]+)\.yourdomain\.com\/?$ http://taobao.com// [L]
Appconfig:http://www.aips.me/sae-binding-domain-subdirectory.html
Nginx的寫法大概是這樣的:
Apache類似:
目的
) /test/$1$2 #/test是www.test.com/後邊的目錄
當造訪abc.test.com跳到www.test.com/test/abc ,瀏覽器位址會顯示abc.test.com位址。
方法
在apache的設定檔裡新增虛擬主機
NameVirtualHost :80
ServerName www.test.com
ServerAlias *.test.com
DocumentRoot /var/www/test
rewriteengine on
rewritecond %{HTTP_HOST} [^.]+.test.com$
rewriterule ^(.+) %{HTTP_HOST}$1 [C]
rewriterule ([^.]+).test.com(.
另外可以打開一下你的debug,看一下日誌麼?
我增加了apache設定:
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/ 是不是要需要增加其他的
另我用
RewriteEngine on RewriteCond %{HTTP_HOST} ^[^.]+.xiaocaowangluo.com$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+).xiaocaowangluo.com(.*) /www/xiaocaowangluo/shop/$1$2
這個配置也不行,求大神。
apache 可以這樣寫
Appconfig:
http://www.aips.me/sae-binding-domain-subdirectory.html