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

[HELP] 测试项目发布到CentOS后,访问报404错误

[复制链接]
发表于 2016-6-23 16:39:34 | 显示全部楼层 |阅读模式
刚刚学习CI框架,写了一个demo,在windows开发环境下测试正常。windows10 apache+php7 zendStudio开发
搭建了一个CentOS7的虚拟机,部署了httpd和php5.4的环境,写了测试的helloword页面,环境没问题,本地浏览器能够正常访问。
将demo项目文件夹Test上传到httpd的发布目录var/www/html目录下后,浏览器访问:http://192.168.1.5/Test报404错误。Test/index.php同样404.
在Test目录下放了一个hello.php文件,浏览器访问:http://192.168.1.5/Test/hello.php能够正常打开。
感觉是路由出了问题。
由于刚刚学习CI框架,没有使用任何特殊设置,没有使用urlrewrite等功能。
测试demo是网上学习的,地址:http://www.softeng.cn/?p=53
项目名改成了Test,其他一样。
由于windows环境运行正常,linux和php还有ci都在学习中,感觉无从下手,希望高手指点迷津。
谢谢。
发表于 2016-6-23 16:41:49 | 显示全部楼层
base_url 设置对了吗
 楼主| 发表于 2016-6-24 09:31:45 | 显示全部楼层
解决了,是文件名大小写问题导致的。
我之前是按照说明,php页面文件名小写,类名首字母大写。
windows下没问题。
但是linux严格区分大小写,导致404错误。
把Controller的php文件改成和类名一样,首字母大写后,可以打开。
然后发现model找不到。结果把model的php文件改成首字母大写后系统可以运行。
最终发现,load-》model的时候,需要完全小写
但是对应的model和Controller的php文件却要大写。
最后测试了一下view,发现view只要load的时候,与view页面文件名一样,就可以。
感觉真的很诡异,为啥会有这样的问题,是CI3.06版本问题还是什么。听无语。
 楼主| 发表于 2016-6-24 09:33:23 | 显示全部楼层

本版积分规则