2011-10-16 44 views
0

我试图让以正斜杠(/)开头的相对链接用mod_rewrite重写来引用网站根目录。使用mod_rewrite重写网站根目录

我的网站:

http://localhost/mysite/ 

,我有众多成功案例,例如,在我的CSS目录,格式类似于这样:

background: url('/img/background.jpg'); 

我想使用mod_rewrite点说,在:

http://localhost/mysite/img/background.jpg 

但现在,它是点荷兰国际集团到:

http://localhost/img/background.jpg 

我提前道歉,如果这是一个没有脑子,但我是新来的mod_rewrite的,我至今没有成功地让这个工作!

回答

0

这不是一件好事。这是管道录音应该固定在其核心的错误。

通过以这种方式重写网址,您可能会冒险破坏localhost等其他网站的链接,这是一个长期的维护噩梦,不得不处理网站根目录之外的网址。

请考虑在您的CSS中使用相对链接。 。

background: url('../img/background.jpg'); 

如果图像是在哪里你的CSS样式表是在同级目录

链接样式表中总是相对于样式表中的位置 - 而不是使用HTML文件它。这使得在样式表中使用相对链接变得非常简单。

+0

那么,我继承了一个相当大的项目,已经这样设置,所以我只是想让它在我的本地开发环境中工作。所有的网址引用,不只是在CSS中,都用/来格式化以指示网站的根目录。所以我只需要想出一个函数mod_rewrite来让我为我工作,并引用localhost/mysite而不是localhost /。它可能只是管道录音,但改变每个网址的参考时间太密集。 – skiindude22

+0

@skiin为什么不建立一个单独的本地网站,然后用自己的网站根?可能是更好/更干净的方式 –

+0

我试过设置dev.mysite.com(编辑主机文件并在httpd.conf中创建虚拟主机),但无法让它正常工作,所以,因为mod_rewrite只会成为一对代码,即使这不是理想的解决方案,它肯定会帮助我走出去! – skiindude22