Apache .htaccess-设置每个目录";根“;

Apache .htaccess-设置每个目录";根“;,apache,.htaccess,configuration,apache2,Apache,.htaccess,Configuration,Apache2,这是我当前的“共享”服务器配置: http://hello.com/ maps to / # There are a bunch of HTML files under / http://hello.com/sub-1/ maps to /sub-1/ 现在我需要上传一个新的“站点”到http://hello.com/sub-2/。但是,此捆绑包中的所有HTML文件都使用绝对路径引用CSS和图像,例如 如何在不必更改站点文件的情况下配置服务器 以下讨论(和)与此性质类似。但是,我不想将根文件

这是我当前的“共享”服务器配置:

http://hello.com/ maps to /
# There are a bunch of HTML files under /

http://hello.com/sub-1/ maps to /sub-1/
现在我需要上传一个新的“站点”到
http://hello.com/sub-2/
。但是,此捆绑包中的所有HTML文件都使用绝对路径引用CSS和图像,例如

如何在不必更改站点文件的情况下配置服务器

以下讨论(和)与此性质类似。但是,我不想将根文件夹更改为
http://hello.com/sub-2/


谢谢

如果不将所有图像引用更改为相对路径(或包含sub-2),就没有办法真正做到这一点

一种有点老套的方法可能是使用
-f
标记
RewriteCond
,根据目标图像的位置将加载的任何内容从/images更改为/sub-1/images或/sub-2/images。例如:

RewriteCond -f sub-1/{$REQUEST_URI}
RewriteRule (images/.+) sub-1/$1

RewriteCond -f sub-2/{$REQUEST_URI}
RewriteRule (images/.+) sub-2/$1

当然,目录中的冲突会破坏一切。我的mod_重写经验也有点生疏,因此语法可能不是100%正确,但你明白了。

有没有任何解决方案允许我们将.htaccess放在
sub-2
而不是
/
中?