2011-05-27 92 views
0

我不知道有什麼有趣的它,直到我試圖注入js文件與這一個觀點:我的.htaccess文件應該如何忽略js文件?

$this->headScript()->appendFile($this->baseUrl('/js/planilla.js')); 
echo $this->headScript(); 

現在,我使用Zend框架,並有當我這樣做沒有問題與/ public/css文件夾中的任何css文件一樣,所以我真的不知道問題可能是什麼。 JS的文件夾和js文件確實存在,當我嘗試只是訪問:通過瀏覽器,我得到了以下錯誤消息(HTTP //domain.local/js/planilla.js):

異常信息:

消息:無效控制器所指定的(JS) 堆棧跟蹤:

0 /home/fiodorovich/library/ZendFramework/library/Zend/Controller/Front.php(954):Zend_Controller_Dispatcher_Standard->調度(對象(Zend_Controller_Request_Http),Object(Zend_Controller_Response_Http))

1 /home/fiodorovich/library/ZendFramework/library/Zend/Application/Bootstrap/Bootstrap.php(97):Zend_Controller_Front->調度()

2 /家庭/ fiodorovich /庫/ ZendFramework /庫/ Zend的/ Application.php(366):Zend_Application_Bootstrap_Bootstrap->運行()

3 /home/fiodorovich/public_html/gisele/public/index.php(26):Zend_Application->運行()

4 {}主

請求參數:

array( '控制'=> 'JS', '行動'=> 'planilla.js', '模塊'=> '默認', )

現在我的.htaccess看起來是這樣的:

提前
SetEnv APPLICATION_ENV development 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d [OR] 
RewriteCond %{REQUEST_URI} (^.*/gisele.local/.*)$ [NC] 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

任何任何幫助都會受到歡迎和轟的一聲,謝謝...

編輯:虛擬主機文件

EDIT2:我得到這個東西的工作。

我不得不將此行添加到文件的application.ini爲它工作:

resources.frontController.params.useDefaultControllerAlways = 1 
+0

刪除問題一旦被回答就不是Stack Overflow的工作方式。相反,它將圍繞未來可能對遊客有用的問題進行討論。您的要求刪除該問題已被拒絕,但我必須指出,您仍然有權自己這樣做,但我也會建議您不要這樣做,除非您從這個問題中看不到SO的未來訪問者。 – 2011-05-27 20:02:18

+0

@lasse如果問題可能出於任何人的興趣,我對這裏的問題沒有問題。我肯定花了很長時間試圖找出什麼是不工作,但我找到了一個不同的線程的答案:http://stackoverflow.com/questions/2130530/uncaught-exception-zend-controller-dispatcher-異常。如果你檢查你會發現第二個答案實際上回應了我一直在尋找的東西。然而,這個問題沒有被選爲正確的問題。你在這裏待了很長時間,從而知道是否有人會覺得這有幫助。感謝您讓我注意。 – 2011-05-27 21:33:58

回答

0

RewriteCond %{REQUEST_URI} (^.*/gisele.local/.*)$ [NC] 

看起來很可疑。嘗試對其發表評論。 我的.htaccess文件看起來像這樣。這是絕對可行的。

RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 

RewriteRule ^(.*)$ index.php [NC,L,QSA] 
+0

如果我評論它,我得到一個404每個頁面,但索引 – 2011-05-27 16:31:14

+0

你在前面的行中刪除了「[OR]」,然後? – akond 2011-05-27 16:35:48

+0

@akmond,它仍然不起作用。我正在使用我的虛擬主機副本更新問題 – 2011-05-27 16:40:24

0

您的.htaccess很好。嘗試http://domain.local/js/並檢查您的文件是否仍然存在。

zend框架將您的js目錄作爲控制器,因此,您的公共目錄中的「js」是否爲css?你也可以試試這個來確定。

RewriteRule ^js(.*)$ – [NC,L] 

或者可能是您的環境設置。讓我知道發生什麼事。

+0

該文件夾在那裏,如果我去http://domain.local/js/我看到的文件。然而,當我添加RewriteRule^js(。*)$ - [NC,L]時,我得到404錯誤 – 2011-05-27 17:02:41

+0

@ la_f0ka,這意味着您的htaccess工作正常。您應該能夠通過http://domain.local/js導航並打開文件 – gonzalobenitez 2011-05-27 17:27:34