amu945 发表于 2020-3-7 21:45:09

codeigniter 4 路由问题

问题描述:

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');,结果失败问题一样。


求教大家!

amu945 发表于 2020-3-13 22:51:59

问题解决全部在于.htaccess文件,官方提供的.htaccess里面做了这个奇怪的设置

blackice 发表于 2020-3-14 17:08:05

站点域名必须指向public目录

louaolin 发表于 2020-3-23 00:56:35

站点指向public目录,然后查看伪静态有没有成功运行
页: [1]
查看完整版本: codeigniter 4 路由问题