首先,我是新的codeigniter,我没有按照步骤的文件和一些yt视频,但我似乎不能让codeigniter正常工作,这里是我的问题
1.我的设定
服务器:Xampp::本地主机
我的文件夹htdocs/crm/code files在这里
我将我的xampp 'httpd.conf'从
DocumentRoot "C:/xampp/htdocs/"
<Directory "C:/xampp/htdocs/">
至
DocumentRoot "C:/xampp/htdocs/crm/public/"
<Directory "C:/xampp/htdocs/crm/public/">
这样我就可以通过http://localhost/
而不是http://localhost/crm/public
访问代码点火器
并且我更改了app\Config\App.php的基本URL等....
当我进入localhost/
时,它会显示与localhost/index.php
相同的codeigniter欢迎屏幕,但当我尝试键入localhost/home
时,它会显示-〉
404 - File Not Found
Can't find a route for 'get: home'.
但home是我的文件夹app\Controllers\Home.php
中的控制器home.php
<?php
namespace App\Controllers;
class Home extends BaseController
{
public function index()
{
return view('welcome_message');
}
}
它应该可以通过url访问,对吗?有人能告诉我我可能做错了什么吗?我没有正确配置什么吗?
请理解我是新的codeignter不是php,但只是框架,这是我第一次使用它,如果我需要提供更多的信息或文档,请评论,我会编辑我的Q
谢谢你,祝你有美好的一天:)
2条答案
按热度按时间cig3rfwq1#
您需要在Codeigniter 4.
app/Config/Routes.php
文件中设置路由。在该文件中,您可以找到新安装的路径:您可以在此处定义更多路由,例如:
在
Home
控制器中,您可能会说:sshcrbum2#
注:
This applies only to ver
4.2.1as I have not tested the other versions
第一个
您必须转到
app/Config/Routes.php
,然后取消注解属性setAutoRoute(false)
并将其值设置为true
而不是false
,然后转到app/Config/Feature.php
并将属性$autoRoutesImproved
更改为true
如果未找到与URI匹配的已定义路由,系统将尝试在启用自动路由时将该URI与控制器和方法进行匹配。- Codeignter docs
其次
将由自动路由(已改进)执行的控制器方法需要HTTP动词(get、post、put等)前缀,如getIndex()、postCreate()。
示例:
请注意,这是我的经验,根据
Codeignter
文档,您可以在这里找到完整的文章:自动布线(已改进)和URI Routing