【问题标题】:Clean URL in CakePHPCakePHP 中的清理 URL
【发布时间】:2014-02-10 14:02:08
【问题描述】:

我需要有关 CakePHP 中干净 URL 的帮助。我已经尝试了一段时间没有运气。

这是现有的 htaccess

重写引擎开启 RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L]

这是我要清理的 URL:

http://example.com/signup/?key=dT33Y%2FeKXCjgeo69XpTs39YV%2F4ZnHht0M5E%2BXk9iDKQ%3D

我希望 URL 看起来像这样:

http://example.com/signup/dT33Y%2FeKXCjgeo69XpTs39YV%2F4ZnHht0M5E%2BXk9iDKQ%3D

请帮忙。谢谢!

【问题讨论】:

    标签: apache .htaccess cakephp mod-rewrite


    【解决方案1】:

    /signup/.htaccess试试这个代码:

    RewriteEngine On
    
    RewriteCond %{THE_REQUEST} /signup/\?key=([^\s&]+) [NC]
    RewriteRule ^ %1? [R=302,L,NE]
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^([^/]+)/?$ ?key=$2 [L,QSA]
    

    【讨论】:

    • 这似乎不起作用。我仍然得到相同的网址。难道是我更新了错误的htaccess?我正在 /app/webroot/ 中编辑一个。
    • 好的,试试这个更新的代码。 signup 是否由 cakephp 提供服务?
    • 是的,注册服务由 cakephp 提供。我有一个控制器和该目录的视图。仍然没有运气:/
    • 所以您仍然可以毫无问题地访问http://example.com/signup/?key=dT33Y%2FeKXCjgeo69XpTs39YV%2F4ZnHht0M5E%2BXk9iDKQ%3D
    • 是的,我可以访问那个网址就好了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多