0

我有一个允许多个插件域的主机,我的文件夹结构类似于:

public_html
- site1.com
- site2.ca
- site3.tk
- codeigniter

每个站点的文档根目录当前设置为 /public_html/site1.com、public_html/site2.ca 等...

我在一些网站上使用 CodeIgniter。public_html 中的 codeigniter 文件夹与我刚刚重命名的名为“system”的文件夹相同。我发现在网站的 PHP 代码中,我可以在 index.php 中找到:

$system_path = '../codeigniter';

这将适用于我的测试本地服务器。我还没有在我的主机上尝试过,但我认为它也应该在那里工作。这似乎是对效率的一个很好的改进。

我现在要做的就是拥有同样的效率,但使用 css、js、图像和其他前端资产。天真地,我试着把这样的东西

public_html
- site1.com
- site2.ca
- site3.tk
- codeigniter
- js
- css
- img

在我的页面中,我会有类似的内容:

<script src=/../js/app.js></script>

现在我想了想,它显然对客户端资产不起作用。

问题是我已经建立了一个让我很舒服的开发环境,我想在我的新网站上一次又一次地使用它。我目前正在将所有这些前端资产从旧项目复制到新项目,但它们不会因每个项目而改变。我想知道是否有更好的方法来托管这些静态资产,这样它就不会在每个站点上重复。也许没有,我应该继续复制?

4

2 回答 2

1

我认为以您描述的方式共享资源并不明智,这部分来自经验。如果您将多个站点耦合到一个后端,则意味着当您想要升级其中一个站点时,您必须升级所有站点。

复制它们可能看起来很浪费,但除非你有充分的理由,否则我强烈建议不要这样做。

如果您希望优化性能,您可以先尝试其他方法。

于 2013-10-31T17:32:19.540 回答
0

不确定 css 和 img,但对于 js 资产,我将此行添加到 apache.conf 中的虚拟主机

<VirtualHost *:80>
// usual stuff ...
Alias /js /var/www/whereyourjsfolderis/js

我猜您可能想对常见的 css 和图像文件夹执行此操作

Alias /js /var/www/whereyoursharedfolderis/sharedcss
于 2013-10-31T17:34:35.233 回答