本地开发和符号链接的共享库

时间:2016-01-02 17:49:48

标签: php apache composer-php

我尝试设置我的本地apache docroot,如下所示进行本地php开发。

例如,目录结构的片段:

- Libs-git (shared lib packages)
-- Wp_Libs (Contains common libraries for wordpress dev)
--- autoload.php
--- composer
--- my-shared-pkg1
--- my-shared-pkg2

- Wp.Sites
-- Wp.Site1
--- wp-libs (Symlink to Wp_Libs above)
--- wp-content/plugins/myplugin-site1

-- Wp.Site2
--- wp-libs (Symlink to Wp_Libs above)
--- wp-content/plugins/myplugin-site2 

保持这种结构使我可以轻松地对共享包进行更改,并且所有站点都可以使用它们,而无需每次复制并粘贴它们。

问题:

当Wp.Site1调用包含在Wp_Libs原始库中的函数中定义的语句时,我得到404错误作为包含的输出。

来自(wp-content / plugins / myplugin-site1 / plugin.php)的示例代码:

include "wp-libs/autoload.php"; //shared composer autoloader

use my/shared/pkg1;

pkg1::show_tpl('filename'); //This statement should include a file relative to the plugin folder (wp-content/plugins/myplugin/tpls/filename.html) 

为什么我从404语句输出404错误页面?如果我检查包含路径它是否存在..

2 个答案:

答案 0 :(得分:0)

我想您可以尝试将重用的库安装为global。无论如何,问题似乎不是作曲家,更像是配置问题。

答案 1 :(得分:0)

问题解决了!问题是一个小编程错误(库中函数参数的错误默认值),它以整个站点的请求处理程序的方式改变,任何包含的文件都被视为http请求。现在一切正常。

此问题可以标记为已解决。

无论如何,谢谢大家的帮助!