【问题标题】:Routes with Codeigniter使用 Codeigniter 的路由
【发布时间】:2014-01-28 23:27:15
【问题描述】:

我大部分时间都知道如何设置路线,但与其只为我想要更改的一件事列出 50 条左右不同的路线,那是多余的。

我为我的 codeigniter 应用程序设置了这样的文件系统。

-application
    -controllers
        -admin
            login.php
            register.php
            dashboard.php

截至目前,当我访问以下网站时,它会以应有的方式显示。

http://www.mysite.com/admin/(login,register, dashboard)

但是我想操纵路由显示如下,而不必更改文件结构中文件夹的名称。

http://www.mysite.com/my-project/(login,register, dashboard)

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    对于每个页面,“我的项目”是您网站网址的永久部分吗?然后在配置中更改您的 base_url()。

    否则:

    如果你的 base_url 是 http://www.mysite.com

    你想去http://www.mysite.com/my-project/login

    然后您将路线设置为:

    $routes['my-project/(:any)'] = 'admin/$1';

    或者如果只针对这三个:

    $routes['my-project/('login'|'register'|'dashboard')] = 'admin/$1';

    应该可以,虽然我目前没有方便的测试方法

    【讨论】:

    • 是的,这很好,但是由于某种原因,我不明白为什么它不起作用。出于某种原因,它给了我 404 错误。我试着做 $routes['my-project/(:any)'] = 'admin/$1';
    • 我试图理解为什么 $route['my-project/login'] = 'admin/login';有效,但 $routes['my-project/(:any)'] = 'admin/$1';没有。
    • 你能把你的整个路线代码贴上去吗?听起来好像有别的东西在干扰
    • 很遗憾,我的路线文件中没有任何内容。我没有添加任何内容。
    • 那我想可能是语法错误什么的;那条路线应该可以正常工作。你可能想去 IRC #codeigniter 频道和一些人交谈
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-12
    • 1970-01-01
    • 2010-11-20
    • 2011-07-08
    相关资源
    最近更新 更多