这里是目录如何布局在我的服务器上(我inheritance了这一点,目前不能改变) –
/var/www/<stuff for the web> /home/project/src/static/<some CSS, some JavaScript, etc.>
在不希望在不同的目录中有重复的文件的macros伟计划,我试图包括这样的一些文件 –
<link rel="stylesheet" href="/home/project/src/static/css/<file>.css" type="text/css" /> <script src="/home/project/src/static/lib/<file>.js" type="text/javascript"></script>
我试图以这种方式包含每个文件,我得到一个404错误。 我已经修改了“home”目录的path,尝试从/var/www/ to /home/通过将..添加到pathstring的开头,但没有喜悦。
然后,在确认安装了mod_alias之后,我开始为我的configuration文件添加一个path别名指令:
Alias /home/project/src/static/ /home/project/src/static/ <Directory /home/project/src/static/> Order allow,deny Allow from all </Directory>
重新启动Apache,但仍然没有运气。 我试过这个,没有结尾的斜线。
我已经确认的另一件事是, open_basedir没有在php.ini中设置,据我所知,它设置可以产生问题,当试图访问Web根外的文件。
我可以做些什么来使这些文件可以从网站的根目录复制目录,并将其放在网站的根文件夹?
两个选项…一个是正确使用别名 …第一个path是相对于Web目录,就像在浏览器中有http://yoursite/static ,你可以使用:
Alias /static/ /home/project/src/static/
或者,如果你不喜欢这个,而宁愿通过改变文件系统heirarchy来解决它,使用绑定安装。
mkdir /var/www/static/
然后在fstab:
/home/project/src/static/ /var/www/static/ bind defaults 0 0
并应用更改:
mount -a
或一次安装:
mount --bind /home/project/src/static/ /var/www/static/
绑定挂载并不总是最好或最简单的select…有趣的事情可能发生,例如。 运行rm -rf /var/www/* ,你的/home/project/src/static/*也会被删除。