Cakephp更改URL行为

时间:2009-08-24 18:12:32

标签: php iis mod-rewrite cakephp query-string

我们正在使用CakePHP开发一个站点。 我们有一个带有PHP5的Windows IIS服务器(共享主机),它不支持.htaccess或mod_rewrite但我们仍然在运行并开发了很多东西。

当前的URL结构是这样的: MYDOMAIN / index.php的/用户/添加

我们希望将此更改为: ?MYDOMAIN / index.php的控制器=用户安培;行动=添加

我们希望这样做,因为我们正面临一些意外的会话过期问题,我们怀疑这是由于用户从一个网址传播到另一个网址是这样的: MYDOMAIN / index.php文件/用户/添加 至 MYDOMAIN / index.php文件/目录/编辑 这会改变导致会话过期的IIS或PHP域,但是Cake正在完美地解释页面。

如果有办法改变蛋糕的behiviour以带有问题和安瓿的URL,那就太棒了。

提前致谢。

2 个答案:

答案 0 :(得分:1)

你可能想尝试这样的事情:

1)将您的IIS文档根目录指向app / webroot 2)转到http://site.com/index.php?url=/user/add

致电您的申请

至于将其更改为controller = user& action = add,我唯一能建议的是将代码添加到index.php文件中,将“controller = user& action = add”格式转换为url = /用户/添加格式。您可能还需要检查路由器以查看是否有可用于更改这些内容的功能。

如果您需要更多帮助,我会在irc.freenode.net发布问题#cakeph

答案 1 :(得分:0)

会话到期不是由url结构引起的。 你检查一下吗?

  1. 配置::写('Session.timeout','3600');在core.php中。让它更长
  2. 配置:: write('Security.level','high');在core.php中。使它成为中等或低
  3. Configure :: write('Session.checkAgent',false);在core.php中使它成为假。可能导致ajax调用问题