2012-07-19 91 views
7

我正在實施適用於PHP的Slim框架,並且一切看起來都很好。不過,我可以得到它的工作的唯一途徑是通過把的index.php的URL是這樣的:如何讓Slim Framework工作而不必將/index.php放入URL中?

http://www.example.com/index.php/members/1

我希望它是這樣工作的:

http://www.example.com/members/1

我有一種感覺,它與我的.htaccess有關,但我不確定。這是我的.htaccess:

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

有同樣的問題。我可以得到/重新路由到的index.php,但任何子目錄也不會被重新路由... – 2013-05-13 07:46:03

回答

5

恢復註釋(#)行和擺脫另一個應該幫助。當您下載Slim Framework時,它也是originally had this in the .htaccess

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

另外,你應該learn about writing rewrite rules,因爲你不會沒有它遠。

+0

謝謝,@bazmegakapa。這是我原來在.htaccess中的,但它似乎仍然不起作用。我有一種感覺,我的重寫引擎可能無法啓動。我現在試圖對此進行測試。 – Progger 2012-07-19 21:30:07

4

我想這個答案來得晚,但以下鏈接http://docs.slimframework.com/routing/rewrite/
我需要什麼樣的信息是所有語句添加的的AllowOverride到我的虛擬主機配置,這爲我工作。

+0

沒來得晚,它幫助了我......我完全忘記了在我的新服務器中配置該功能;)謝謝! – andufo 2013-08-28 17:36:35

0

檢查您的虛擬主機並allowOverRide全部。

RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^/index.php [QSA,L] 
相關問題