使用mod_rewrite进行多域/多站点文件映射

时间:2012-02-21 16:58:45

标签: mod-rewrite multiple-domains http-host

您好我正在寻找一些帮助,正确使用我的应用程序的mod_rewrite重写规则。我有多个域指向我服务器上的相同文件结构,因为我使用自定义php脚本来显示每个域的正确内容。

现在我希望能够映射不指向脚本的文件结构的一部分,这样我就可以通过更短的访问文件路径来传递文件htaccess

所以我想使用domain.com/file/example.jpg代替domain.com/file/specific_folder_for_this_domain/example.jpg

到目前为止,我已经尝试了这个没有运气

RewriteRule ^file/(.*)$ file/%{HTTP_HOST}/$1 [L]

当我在我的测试服务器上查看mod_rewrite日志时,由于某种原因,我发现它正在循环遍历%{HTTP_HOST}变量,文件的内部路径看起来像是 /home/www/domain.com/file/domain.com/domain.com/domain.com/domain.com/example.jpg显然在我的服务器上的任何地方都不存在,因此记录了500个错误。有谁知道如何正确设置这种域映射?

1 个答案:

答案 0 :(得分:0)

尝试添加此内容:

RewriteCond %{REQUEST_FILE} !-f
RewriteRule ^file/(.*)$ file/%{HTTP_HOST}/$1 [L]