Php 代码点火器存储goCart未访问任何控制器

Php 代码点火器存储goCart未访问任何控制器,php,codeigniter,Php,Codeigniter,我正在尝试将一个存储添加到我已经存在的CodeIgniter安装中,但是我不想尝试将它添加到我现有的CodeIgnitor中,而只是将它添加到一个子目录/存储中 我把它全部安装好,并计算出.htaccess文件需要一个什么?在index.php之后,为了消除无法识别的无输入文件,这似乎修复了无输入文件404错误,但是现在,当我尝试转到gocart的任何控制器时,它会显示相同的页面。这里是一个测试商店的链接,如果你点击登录或查看我的购物车,没有任何真正的改变或显示任何其他看起来的视图。有点失落,因

我正在尝试将一个存储添加到我已经存在的CodeIgniter安装中,但是我不想尝试将它添加到我现有的CodeIgnitor中,而只是将它添加到一个子目录/存储中

我把它全部安装好,并计算出.htaccess文件需要一个什么?在index.php之后,为了消除无法识别的无输入文件,这似乎修复了无输入文件404错误,但是现在,当我尝试转到gocart的任何控制器时,它会显示相同的页面。这里是一个测试商店的链接,如果你点击登录或查看我的购物车,没有任何真正的改变或显示任何其他看起来的视图。有点失落,因为这一切都在localhost上运行良好,具有完全相同的站点构建

我的.htaccess文件看起来像这样,似乎可以消除无输入错误,但现在无法正确处理任何其他控制器或其他任何东西

 <IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /store
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ index.php?/$1 [L]
 </IfModule>

重新启动发动机
新基地/商店
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^(.*)$index.php?/$1[L]
即使是这种风格的.htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /store/index.php?/$1 [L]
</IfModule>

重新启动发动机
重写基/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^(.*)$/store/index.php?/$1[L]

有没有关于测试或查找发生了什么的想法?

您应该将访问排除添加到某个目录中,请尝试以下方法:

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond $1 !^(index\.php|store)
    RewriteRule ^(.*)$ /index.php?/$1 [L]
</IfModule>

重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
1美元^(索引\.php |存储)
重写规则^(.*)$/index.php?/$1[L]

您应该将访问排除添加到某个目录,请尝试以下方法:

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond $1 !^(index\.php|store)
    RewriteRule ^(.*)$ /index.php?/$1 [L]
</IfModule>

重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
1美元^(索引\.php |存储)
重写规则^(.*)$/index.php?/$1[L]

我找到了对我来说似乎有效的答案。我确实像上面的评论中提到的那样编辑了基本URL,但使它起作用的是在gocart/config/config.php文件中将uri_协议更改为AUTO

$config['uri_protocol'] = 'AUTO';
而不是

$config['uri_protocol'] =  'PATH_INFO'
出于某种原因,我认为goCart会将其默认为AUTO,但从外观上看,它默认为PATH_INFO。瞧,它起作用了。我真傻,我看得太多了


谢谢

我找到了对我来说似乎有效的答案。我确实像上面的评论中提到的那样编辑了基本URL,但使它起作用的是在gocart/config/config.php文件中将uri_协议更改为AUTO

$config['uri_protocol'] = 'AUTO';
而不是

$config['uri_protocol'] =  'PATH_INFO'
出于某种原因,我认为goCart会将其默认为AUTO,但从外观上看,它默认为PATH_INFO。瞧,它起作用了。我真傻,我看得太多了


谢谢

根据我在子文件夹中运行codeigniter的经验,您肯定需要.htaccess中包含的子文件夹,如第二个示例所示。您还需要将config.php中的基本url更改为
http://yoursite/store/
。如果你不能更改基本URL,那么你需要为所有控制器创建路由,包括/store/在内。嘿,谢谢@Jeemusu,我想我已经让它正常工作了。我确实像你提到的那样编辑了基本URL,但它的工作原理是更改$config['uri_protocol']='AUTO';而不是“路径信息”,出于某种原因,我认为goCart会将其默认为AUTO,但从外观上看,它被禁用为路径信息。瞧,它是有效的。根据我在子文件夹中运行codeigniter的经验,您肯定需要.htaccess中包含的子文件夹,如第二个示例所示。您还需要将config.php中的基本url更改为
http://yoursite/store/
。如果你不能更改基本URL,那么你需要为所有控制器创建路由,包括/store/在内。嘿,谢谢@Jeemusu,我想我已经让它正常工作了。我确实像你提到的那样编辑了基本URL,但它的工作原理是更改$config['uri_protocol']='AUTO';而不是“路径信息”,出于某种原因,我认为goCart会将其默认为AUTO,但从外观上看,它被禁用为路径信息。瞧,它起作用了。我试过这个,但对我来说,它并没有改变任何事情。我确实找到了我贴在下面的答案。谢谢你的建议。我试过这个,但对我来说没有任何改变。我确实找到了我贴在下面的答案。谢谢你的建议。