2012-02-06 124 views
1

我有一個Zend應用程序,我試圖移植到一臺[新]計算機。我已經在以前的機器上工作了。Zend路由不能正常工作

當我去到URL localhost/myapp時,應用程序加載正確的索引頁面(即按照它應該運行我的IndexController.indexAction())。但是,當我轉到任何其他頁面時,出現無法找到控制器「myapp」的錯誤。

我已確認重寫正在工作(呈現的錯誤頁面是通過我自定義的ErrorController) - 似乎由於某種原因,Zend將webroot視爲localhost,這意味着之後的第一個參數「 myapp「正被視爲控制器。

關於什麼可能導致這種情況以及如何解決它而不將整個應用程序移動到Web目錄根目錄的任何想法?

回答

0

發現在我的htaccess文件中添加以下行的答案:

RewriteBase /myapp 

我不明白爲什麼需要這條線(它在原始計算機上完全忽略了應用程序的工作方式罰款),但添加它解決了這個問題。

0

這是工作,因爲你的.htaccess文件是在根目錄下,以便通過本地主機/ MYAPP它要它的index.php,但不可能在項目的文件夾中找到的.htaccess

+0

其實不然。在另一臺計算機上,這條線被省略了,但我也有幾個Zend應用程序,每個都位於它自己的服務器根目錄的子目錄中。 – Elie 2012-02-07 17:42:56