我尝试设置我的本地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错误页面?如果我检查包含路径它是否存在..
答案 0 :(得分:0)
我想您可以尝试将重用的库安装为global。无论如何,问题似乎不是作曲家,更像是配置问题。
答案 1 :(得分:0)
问题解决了!问题是一个小编程错误(库中函数参数的错误默认值),它以整个站点的请求处理程序的方式改变,任何包含的文件都被视为http请求。现在一切正常。
此问题可以标记为已解决。
无论如何,谢谢大家的帮助!