我有一個CakePHP 2安裝,但具有某些URL免除默認路由。我通過向.htaccess文件添加異常來完成此操作。例如,撥打電話http://www.mydomain.com/blog或http://www.mydomain.com/proofgallery都會重定向到cakephp之外的文件夾。.htaccess文件中的CakePHP路由異常仍然導致丟失控制器錯誤
的的.htaccess代碼如下所示:
# Overrides to the cake routing
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/? (blog|proofgallery)/(.*)$
RewriteRule ^.*$ - [L]
</IfModule>
但是,我的東西導致這些豁免缺少控制器錯誤error.log中發現。
E.g.
2012-10-16 14:49:15 Error: [MissingControllerException] Controller class ProofgalleryController could not be found.
#0 /home/mydomain/public_html/app/webroot/index.php(96): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#1 {main}
2012-10-16 11:13:24 Error: [MissingControllerException] Controller class BlogController could not be found.
#0 /home/mydomain/public_html/app/webroot/index.php(96): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#1 {}主要
這是爲什麼?以及如何避免它?據我所知,應用程序中的所有鏈接都使用完整的URL(http://www.mbvphotography.com/blog),而不是Cake HTML幫助程序,這可能會解釋缺少的控制器錯誤。
好了,WordPress的安裝已進入應用程序/ Web根目錄/博客 ,而不是「水貨」到/ app文件夾和/應用程序默認的.htaccess/webroot確保不重寫這些路線? 有道理。讓我試試這個......謝謝! – Aji
是的。例如我的一個項目,我在app/webroot中集成了wordpress和OpenX,以便將這些應用程序與CakePHP一起使用。我只是使用CakePHP調用myproyect.com/wordpress和myrproyect.com/openx,沒有任何特殊路由。 如果我幫你記得投票並將其標記爲已解決! :) 如果你有更多的疑惑,讓我知道 – elpeter
謝謝,這說明了... – Aji