为什么Restler3'vendor'文件夹需要在站点根目录下?

时间:2013-10-28 20:32:51

标签: php .htaccess restler

我几天前下载了Restler3,在修补它的同时,我认为移动供应商'是一个好主意。站点外的文件夹。 起初一切似乎都很好,但后来我注意到例如/ math / sum / *示例不再起作用了(如下所示:http://restler3.luracast.com/examples/_002_minimal/readme.html

好的,所以不要将它移到根文件夹之外,而是将其移动到子文件夹中,奇怪的是同样的结果。像api.domain.com/math/sum/1/2/3/4这样的网址,它们采用了不同数量的参数,只是停止工作,直到我把“供应商”放到了这个位置。文件夹回到站点根目录。

现在这对你们中的一些人来说可能是显而易见的,对我而言,事实并非如此。为了防止不兼容,我总是编写相对于其他东西不依赖于它的位置的代码。 Restler的代码看起来很结实,所以我无法想象他们没有做同样的事情。

它可能是我服务器上的东西吗?它可能与建议的.htaccess有关吗? (我总是讨厌那些因为我不能完全理解它们的人)

.htaccess看起来像这样:

DirectoryIndex index.php
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^$ index.php [QSA,L]
    RewriteCond %ˆ{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

有人可以为我解释一下这个问题,即开导我吗?我无法弄清楚。

1 个答案:

答案 0 :(得分:0)

供应商文件夹不一定也不应该是可公开访问的。

当你移动供应商文件夹时,请确保你移动composer.json并运行

composer dump-autoload

确保autoload.php是最新的