目录映射符号链接

时间:2013-11-01 14:46:40

标签: php codeigniter

在CMS应用程序中,我必须在同一台服务器上访问另一个域中的文件。从“/ var / www / vhosts / CMS / httpdocs /”中的CI应用程序中,我尝试 directory_map ('/ var / www / vhosts / other_domain / httpdocs / assets /')但没有成功 - 白页,没有错误。

所以我决定在CI应用程序的根目录中放置一个符号链接到assets目录,并使用directory_map('./ assets /')和directory_map('assets /'),两者都返回白页而不是错误。

文件助手中的directory_map或 get_dir_file_info 是否可以不遵循符号链接(在.htaccess文件中打开symLinks)?

如果没有,您会如何建议我设置应用程序,以便可以对资产文件夹执行操作,就好像它是CI应用程序的本地文件夹一样。作为CMS,我需要上传,复制,移动和删除资产,而本地会阻止open_basedir限制。

这个CMS负责78个站点,因此将所有资产放在一个自制的cdn中是至关重要的。

提前致谢!

1 个答案:

答案 0 :(得分:0)

确保运行CI的/拥有这些文件的unix用户有权访问ci应用程序根文件夹中的sym链接,这样如果你在/ home / ciap / assetsfromvar / chmod中创建了你的ln,那么您的ciap用户可以访问它。另外,根据apache的配置方式,您可能还必须允许apache用户访问该文件夹

不知道关于directory_map从未使用CI我自己总觉得它有点可怕所以避免它。本地我在/ var / www / html /中有我的网络文件,我有一个存储文件,我的cdn在/ home / cdn / san /我有一个ln -s在/ var / www / html / cdn / - > / home / cdn / san /我然后在var文件夹中的sym链接上设置了777,所有文件的文件所有权由cdn用户提供,因为所有文件都存在于cdn用户空间中。我的apache以httpd运行,但可以正常访问它。希望有意义