我想知道这是不是一个好主意,有什么缺点。
我之所以考虑它,是因为我在Web根目录之外有一系列主题,我想将它们保留在那里,因为运行该网站的应用程序也在那里(主题是应用程序的一部分) )。
所以我会正常链接它们,例如:
site.com/views/images/bg.gif
从.htaccess我将每个请求重定向到PHP脚本。如果请求以image/gif
开头,脚本会在应用程序主题文件夹中查找图像并将其输出为views/
。
我的想法是浏览器会缓存这些文件,因此性能影响应该非常低,对吧?如果我是对的,有什么我需要告诉他们缓存它们吗?
答案 0 :(得分:1)
您始终可以创建一个Apache别名,将该外部主题目录映射到文档根目录中,例如
Alias /themes /path/to/theme/dir
然后有
<img src="/themes/foobar_theme/bg.gif" />
在你的HTML中输入内容。通过这种方式,您可以将主题文件放在文档根目录之外,仍然可以通过直接URL访问它们,并且无需让PHP提供所有内容。
答案 1 :(得分:0)
您应该允许您的Web服务器直接提供CSS,脚本和图像等静态资源,因为这样可以减少CPU负载服务器端,从而减少请求的延迟。
如果需要将这些资源保留在应用程序层次结构中,只需仔细配置即可在Webroot之外创建虚拟目录。
如果您动态生成任何这些资源,或者根据计算的标准限制对这些资源的访问,则此答案不适用。