我在我的浏览器中试过这个:
http://example.com/contact
但随后出现“找不到 Controller 类 ContactController”错误
它不存在,因为“contact”是一个不属于 CakePHP 应用程序的文件夹名称。它里面有 2 个 php 文件,但它们是独立工作的。它们不是 CakePHP 应用程序文件。
我试过这个:
Router::redirect('/contact/*', 'http://example.com/contact/',
array('status' => 302));
但是我从浏览器收到这个错误 “此网页有重定向循环”
我如何进行重定向才能避免出现此错误?
最佳答案
可以添加 mod_rewrite 规则。
假设您的应用路径是:
/var/www/
/var/www/app
/var/www/app/webroot
将您的文件夹“联系人”添加到
/var/www/contact
在以下位置找到 CakePHP .htaccess
/var/www/.htaccess
这是原来的内容:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
在“RewriteEngine on”行之后添加下面的规则
RewriteRule ^contact - [L]
看起来像这样
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^contact - [L]
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
关于php - 在 CakePHP 中路由静态文件夹名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13351185/