2016-09-15 170 views
0

我真的不知道如何搜索我遇​​到的这个问题。我必须将CMS部署到学校项目的域的子文件夹中:www.domain.de/new 问题是,CMS使用绝对路径引用所有文件,因此css的路径例如是“www。 domain.de/styles/file.css“而不是”www.domain.de/new/styles/file.css“htaccess文件重定向从子文件夹的绝对链接

对于这个问题,我们的顾问告诉我们他有一个htaccess文件来解决这个问题。它包含

RewriteEngine On 
RewriteBase /new/ 

它没有做任何事情(据我们所知),我并没有真正惊讶。请告诉我,如果我错了,但我认为htaccess文件将被“执行”,你进入他们所在的文件夹,所以要重写将影响绝对路径,我们必须把htaccess文件放在根折叠?我们不能。

我能想到的唯一解决方案是使用子域来访问指向我们的新目录的文件夹(类似new.domain.de)。

问候 Neokil

+0

http://stackoverflow.com/questions/21347768/what-does-rewritebase-do-and-how-to-use-it – Vrac

回答

0

你是正确的 - 这.htaccess文件做绝对没问题。它设置了一个变量,但没有做任何事情。

假设您无权访问此CMS的源代码,那么,您建议的解决方案(将其放入新域的根文件夹中)是最有效的解决方案。

如果失败了,您可以使用类似mod_substitute - http://httpd.apache.org/docs/current/mod/mod_substitute.html的内容来修改HTML,因为它会向客户端提供HTML,从而使CSS URL更正。例如:

Substitute s!/styles/!/new/styles/! 

但是,我怀疑这只是一个部分的解决方案。

当然,作为我,我会推荐2300万个开源CMS中的一个,而不是这个看起来设计得很差的CMS。或者你的“顾问”可能不知道他在说什么。

相关问题