用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1903|回复: 4
收起左侧

[版本 4.x] codeigniter 4 路由问题

[复制链接]
发表于 2020-3-7 21:45:09 | 显示全部楼层 |阅读模式
问题描述:

1. 我在本机使用建立 xampp 建立一个虚拟站点:ci.demo.local。
2. 直接解压 github 下载的zip 至站点目录下(目录为ci4),不修改任何代码。
3. 访问 http://ci.demo.local/ci4/public,访问正常,显示 欢迎页面。
4. 访问 http://ci.demo.local/ci4/public/home,访问正常,显示 欢迎页面。
5. 访问 http://ci.demo.local/ci4/public/home/,访问异常,网页直接跳转至:http://ci.demo.local/home(直接就跳出了ci框架)
6. 访问 http://ci.demo.local/ci4/public/home/xxx,访问正常,显示 框架提供的 404 页面。


也就是说:地址 home 与 home/ 请求的不是同一个控制器的同一个方法。


尝试:

1. 修改 app/config/app.php 中的 $baseURL,从原来的:http://localhost:8080/,改为:http://ci.demo.local/ ,结果失败问题一样。
2. 修改 app/config/app.php 中的 $baseURL,从原来的:http://localhost:8080/,改为:http://ci.demo.local/ci4/ ,结果失败问题一样。
3. 修改 app/config/app.php 中的 $baseURL,从原来的:http://localhost:8080/,改为:http://ci.demo.local/ci4/public/ ,结果失败问题一样。

4. 在 app/config/routes.php 中添加路由:$routes->get('/home/', 'Home::index');,结果失败问题一样。
5. 在 app/config/routes.php 中添加路由:$routes->get('/home/(.*?)', 'Home::index');,结果失败问题一样。


求教大家!
 楼主| 发表于 2020-3-13 22:51:59 | 显示全部楼层
问题解决全部在于.htaccess文件,官方提供的.htaccess里面做了这个奇怪的设置
发表于 2020-3-14 17:08:05 | 显示全部楼层
站点域名必须指向public目录
发表于 2020-3-23 00:56:35 | 显示全部楼层
站点指向public目录,然后查看伪静态有没有成功运行

本版积分规则