我有一个静态网站生成器,它可以创建根相对URL。
例如
/
/testpage1/
/testpage1/coolcat.jpg
original site gen file hierarchy example
当它们在服务器的根目录下运行时,它们工作得很好...
但是,我很好奇是否存在一个.htaccess规则,我可以使用该规则将静态站点本质上放置在根目录下的子目录中,并使根目录相对URL将该子目录视为新的“根目录” >
因此,如果我放置静态文件,请说一个名为“ coolsite”的子目录,由于它们是根相对URL,因此路径现在都将中断。 /
仍将转到/
,而/testpage1/
将无法工作,因为它不会链接到/coolsite/testpage1/
subdirectory file hierarchy example
我尝试了以下操作,虽然这些操作很接近,但是它并未将子目录保留在最终URL中。该站点仍在http://mygreaturl.com/coolsite/
加载,并且链接有效,但是在导航该站点– testpage1时,URL变为http://mygreaturl.com/testpage1/
而不是首选的http://mygreaturl.com/coolsite/testpage1/
RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://mygreaturl.com/coolsite/
RewriteCond %{REQUEST_URI} !^/coolsite/
RewriteRule (.*) /coolsite/$1 [L,QSA]
一个关键因素是,理想情况下,此操作独立于其他站点数据运行。它不会重写对我所有其他子目录或文件的访问。
谢谢您的帮助,请让我知道我是否可以澄清任何事情!