0

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

好的,所以我没有把它移到根文件夹之外,而是把它移到了一个子文件夹中,奇怪的是,结果是一样的。类似于 api.domain.com/math/sum/1/2/3/4 的 URL 采用可变数量的参数,停止工作,直到我将“供应商”文件夹放回站点根目录。

现在这可能很明显,为什么对你们中的一些人来说,对我来说不是。我总是编写从不依赖于它相对于其他东西的位置的代码,以防止不兼容。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>

有人可以为我解释一下吗,即启发我?我就是想不通。

4

1 回答 1

0

供应商文件夹不需要也不应该在可公开访问的地方。

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

composer dump-autoload

确保 autoload.php 是最新的

于 2013-10-31T09:38:50.430 回答