2015-05-27 27 views
0

我使用超薄框架2.4.2和我的.htaccess看起來像這樣如何路由與修身框架的index.php結束的路徑

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [QSA,L] 

我一直有與路由一些麻煩以index.php結尾的路徑。出於傳統支持的原因,我需要能夠將/soap/index.php路由到我的自定義代碼,但它一直持續到我的notFound處理程序。

我在/index.php

$app->get('/soap/index.php', function() { 
    echo "HERE"; 
}); 

然而,當我去/soap/index.php在我的瀏覽器,它讓斯利姆的404未找到處理類似下面的路線。我嘗試將路線更改爲/soap/index2.php,這使我可以在瀏覽器中看到「HERE」,但是當我使用/soap2/index.php時,我得到的結果與原始結果相同。 /soap/目錄仍然存在,但/soap2/沒有,所以它似乎並不是Apache導致的問題,因爲兩者都返回相同的結果,Slim 404處理程序。它看起來像Slim給任何路線去404的index.php。

我也嘗試創建只是一個/soap/路線,看看修身正試圖使用​​,當我在瀏覽器中訪問/soap/index.php,但仍然給了我404

現在,我會盡力只需讓404處理程序檢測問題並執行操作即可。

回答

0

notFound處理程序中,我得到來自$app->request->getPathInfo()的響應的「/x.php」。當我向前面添加更多字母時,它們會在字符串中結束。它剪裁前9個字符,即文件名是多長。經過更多的觀察,這是一個已知的錯誤。

據報道,GitHub here

更新到最新的Slim框架修復了這個問題。