我有一个允许多个插件域的主机,我的文件夹结构类似于:
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>
现在我考虑过它,它显然不起作用或客户端资产。
问题是我已经建立了一个我很满意的开发环境,并且我想在我的新网站上一次又一次地使用它。我目前正在将所有这些前端资产从旧项目复制到新项目,但它们不会针对每个项目进行更改。我想知道是否有更好的方式来托管这些静态资产,以便不会为每个站点重复。也许没有,我应该继续复制?
答案 0 :(得分:1)
我认为以您描述的方式分享资源并不明智,这部分来自经验。如果您将多个站点连接到一个后端,则意味着当您要升级其中一个站点时必须升级所有站点。
复制它们可能看起来很浪费,但除非你有充分的理由,否则我会强烈反对。
如果您希望优化效果,可能还有其他事情可以先尝试。
答案 1 :(得分:0)
不确定css和img,但对于js资产,我将此行添加到apache.conf中的虚拟主机
<VirtualHost *:80>
// usual stuff ...
Alias /js /var/www/whereyourjsfolderis/js
你可能想对常见的css和图像文件夹这样做
Alias /js /var/www/whereyoursharedfolderis/sharedcss