所以说我有一个要求的网址:
sub.domain/file.bin
我希望获取此文件:
domain/hosted/sub/file.bin
我如何构建重写指令?我已经做了好几天了,这让我很头疼......
子域很多,经常被添加和删除,所以我试图找到一个适用于所有子域的解决方案。
答案 0 :(得分:1)
在sub.domain的httpd配置中:
RewriteCond %{HTTP_HOST} ([^\.]+).domain
RewriteRule ^/file.bin$ http://domain/hosted/%1/file.bin
答案 1 :(得分:1)
假设www.domain.com
的主目录是domain/
,而且 - 给定任何子域sub.domain.com
- 您希望该子域的主目录的文件位于{{1 }}
尝试这样的事情:
domain/hosted/sub/
你可能还需要在你的DNS中使用通配符条目......但我会承认DNS和htaccess mod重写是我的一些弱点。另请参阅http://www.webmasterworld.com/forum92/138.htm
答案 2 :(得分:1)
尝试此规则:
RewriteCond %{HTTP_HOST} ^([^/.]+)\.example\.com$
RewriteCond %1 !=www
RewriteRule !^hosted/ hosted/%1%{REQUEST_URI} [L]