基于投影的文档根

时间:2014-01-21 16:48:40

标签: apache2

我试图通过为每个项目提供一个文件夹来保持我的www文件夹,即:

www/project1
www/project2

然而,这会破坏我的css链接和脚本链接,因为正在寻找错误位置的文件。例如,如果我尝试在project1中包含css/style.css,我会添加以下标记:

<link rel="stylesheet" type="text/css" href="css/style.css"/>

然而,Apache正在www/css/style.css而不是项目的根www/project1/css/style.css

我知道我可以使用绝对路径,但这意味着我必须在部署代码之前更改所有URI,这样容易出错。

有没有办法可以教apache查看Project的文件夹而不是绝对的root文件?

2 个答案:

答案 0 :(得分:0)

你试过这个吗?

<link rel="stylesheet" type="text/css" href="/css/style.css" />

答案 1 :(得分:0)

使用类似于以下

的Apache虚拟主机
NameVirtualHost *:80
<VirtualHost *:80>
ServerName sandbox.lerp.dev
DocumentRoot /var/www/sandbox
        <Directory /var/www/sandbox>
               Options Indexes FollowSymLinks
               AllowOverride All
          </Directory>
</VirtualHost> 

然后在/var/www/sandbox中,我有以下目录结构

enter image description here

然后您的CSS链接将起作用。更改/var/www/sandbox以反映您的文档根目录。我通常为具有不同虚拟主机的每个项目使用不同的域。但是我也有一个沙箱,我可以在这里保留多个与您的要求类似的项目。