2012-07-24 67 views
0

重定向页面我有网址: -我想在CakePHP中

http://mydomain/test/index.html 

我想,当用户将URL输入: - http://mydomain/test

它会重定向到http://mydomain/test/index.html ..

什么我试过我给路由代码。

Router::connect('/', array('controller' => 'enrollments', 'action' => 'index')); 

我想重定向到index.html页面如何给..

+0

index.html页面究竟在哪里?你把它放在app/webroot/test /中吗? – JJJ 2012-07-24 12:26:14

+0

不,它只在webroot上。 – 2012-07-24 12:54:43

+0

您无法访问webroot中的index.html。 index.php优先,你不能删除它,否则CakePHP停止工作。为什么你需要有一个静态html文件,你不能将它添加为一个静态的CakePHP动作并将根重定向到那个? – JJJ 2012-07-24 13:14:02

回答

1

Pages Controller通常用于提供静态网页。例如。如果您创建视图文件* app/views/pages/about_us.ctp *,则可以使用url * http://example.com/pages/about_us*来访问它。

如果您有baked your app,Pages控制器应该已被复制到您的app/controllers/文件夹中,并且可以修改它,或者您可以将pages_controller.php从核心复制到您的应用程序。但是,如果您不需要修改它,即只显示静态内容,则不需要将页面控制器复制到app/controllers/

如何显示静态页面?

那么,如果你使一个视图文件app/views/pages/index.ctp你可以使用url http://example.com/pages/index来访问它。然后修改航线,您可以:

Router::connect('/test', array('controller' => 'pages', 'action' => 'display', index)); 

然而,这将不提供http://www.example.com/test/index.html而是:http://www.example.com/test/index

+0

+1帮助谢谢。我想在这个网址相同的结果; http://www.example.com/test/我的意思是当我运行它时,它将重定向到http://www.example.com/test/index.html .. – 2012-07-25 05:39:30

+0

你可以使用[Router Extensions](http ://book.cakephp.org/1.3/en/view/945/Routes-Configuration#File-extensions-952),但这会影响整个应用程序。我的建议,就是保持原样。 – 2012-07-25 06:08:46