codeigniter中的链接

codeigniter中的链接,codeigniter,Codeigniter,我正在试验codeigniter,但并不真正了解链接是如何工作的 例如,我有这样一个链接: localhost/ci/welcome/cat/7 我的基本url是localhost/ci,因此通过单击此链接,我希望调用controller“welcome”的方法“cat” 这种方法非常简单: function cat() { echo "just a test."; } 非常基本-我希望在屏幕上看到文本,但我只看到一个404页的NotFound错误 有什

我正在试验codeigniter,但并不真正了解链接是如何工作的

例如,我有这样一个链接:

localhost/ci/welcome/cat/7

我的基本url是localhost/ci,因此通过单击此链接,我希望调用controller“welcome”的方法“cat”

这种方法非常简单:

   function cat()
    { 
        echo "just a test.";
    }
非常基本-我希望在屏幕上看到文本,但我只看到一个404页的NotFound错误


有什么问题吗?

您是否为CodeIgniter正确配置了
mod_rewrite
(或一般的URL重写)?不支持开箱即用


他们的文档中有一些说明。

您是否为CodeIgniter正确配置了
mod_rewrite
(或通常的URL重写)?不支持开箱即用


他们的文档中有一些说明。

我对用户指南中建议的重写规则有问题。我也得到了404。我必须删除规则中index.php之前的斜杠

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

正如Veeti所说,还记得为Apache启用mod_rewrite。

我对用户指南中建议的重写规则有问题。我也得到了404。我必须删除规则中index.php之前的斜杠

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

正如Veeti所说,还记得为Apache启用mod_rewrite。

我有一个htaccess文件:RewriteCond$1上的RewriteEngine^(index\.php | images | captcha | css | js | robots\.txt)RewriteRule^(.*)$/index.php/$1[L]我从我用来学习codeigniter的书中复制了它,所以我不完全确定它的作用。你认为这样行吗?PS不知道这是否有什么区别,但我使用的是“延迟回复”的MAMPKind,但是你为Apache启用了mod_rewrite吗?您必须编辑httpd.conf才能这样做。我有这个htaccess文件:RewriteCond$1上的RewriteEngine^(index\.php | images | captcha | css | js | robots\.txt)RewriteRule^(.*)$/index.php/$1[L]我从我用来学习codeigniter的书中复制了它,所以我不完全确定它的作用。你认为这样行吗?PS不知道这是否有什么区别,但我使用的是“延迟回复”的MAMPKind,但是你为Apache启用了mod_rewrite吗?必须编辑httpd.conf才能执行此操作。删除了斜杠,但仍然不起作用。我已经检查了文件httpd.conf(在mamp/conf/apache中),它包含以下内容:LoadModule rewrite\u module modules/mod\u rewrite.所以我认为模块加载正确?我尝试了几个不同的链接,注意到localhost/ci/welcome/test打开了一个Google404(“哎呀!这个链接好像坏了”)当localhost/ci/index.php/welcome/test打开一个codeigniter 404时。不知道这是否有区别?当你转到localhost/ci/index.php/welcome时,你看到codeigniter欢迎页面了吗?删除了斜杠,但仍然不起作用。我检查了文件httpd.conf(在mamp/conf/apache中)它包含以下内容:LoadModule rewrite\u module modules/mod\u rewrite。那么我认为模块加载正确了吗?我尝试了几个不同的链接,注意到localhost/ci/welcome/test打开了一个google 404(“哎呀!这个链接似乎坏了”),而localhost/ci/index.php/welcome/test打开了一个codeigniter 404。不知道这是否有区别?当您转到localhost/ci/index.php/welcome时,是否会看到CodeIgniter欢迎页面?