【发布时间】:2017-07-16 21:11:38
【问题描述】:
我有多个使用 yii2 框架构建的 restful api,我想要使用存储在不同地址中的单个供应商目录
那是
我有一个托管在www.example1.com 的应用程序和另一个托管在www.example2.com 的应用程序,而我希望将供应商文件包含在www.example3.com 上,这样在示例1 和示例2 中我只需要上传没有供应商目录的 resful 文件夹
查看 yii2 高级文件夹后,我在 index.php 中找到了这些行
require(__DIR__ . '/_protected/vendor/autoload.php');
require(__DIR__ . '/_protected/vendor/yiisoft/yii2/Yii.php');
我已经尝试过通过这样做来解决问题
require(__DIR__ . 'http:://example1.com/pathto/_protected/vendor/autoload.php');
但上述失败,我怎样才能最好地做到这一点
【问题讨论】:
-
首先删除 DIR,顺便说一句,这会使应用程序面临一些安全问题
-
据我了解,您正试图在域之间共享 PHP 源代码。这些域是否托管在不同的服务器上?如果没有,您可以只使用
require()需要与其他域共享的vendor文件夹的本地路径。如果托管在不同的服务器上,那么您尝试过的操作将不起作用,因为脚本将在源服务器上运行,而不是在目标服务器(requires 它的服务器)上运行,顺便说一句,您的语法是错误的。此外,这是一种不安全和不寻常的方法。如果vendor文件夹中的源不会经常更改,建议你把它放在每个域上。 -
正如许多其他人已经指出的那样,如果您将这些 RESTful API 托管在不同的服务器上,那么出于安全考虑,不鼓励共享此类资源。
标签: php yii2 yii2-advanced-app