我是使用CodeIngiter框架的新手。我在localhost上测试了我的代码。它运作得很好。
但是当我把文件放在远程服务器上时。它给了我:
“找不到404页面 - 找不到您请求的页面。”
当我通过网址呼叫控制器时:http://www.mysite.com/dev/application/facebook/show_info
然而欢迎页面显示正确。我可以修改welcome.php控制器来检查 基本网址。然后,我测试了网址,所以我尝试按照字母大小写(因为我的控制器类被调用:Show_Info.php)http://www.mysite.com/dev/application/facebook/Show_Info
它显示另一条错误消息: “遇到错误 - 无法找到您指定的模型:fb_user_model”
我通过谷歌,堆栈溢出等搜索,但我仍然找不到解决方案。 请帮助,抱歉我的英语不好。
文件树:
(http://www.mysite.com)
│
└──application
│
├───dev
│ ├───codeigniter
│ │ |───system
│ │ └───application
│ │ |─controller
│ │ | ├welcome.php
│ │ | └facebook
│ │ | └Show_Info.php
│ │
│ ├───index.php
│ ├───.htaccess
│ |
htaccess的:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]
base_url:
答案 0 :(得分:2)
首先,您应该从结构中删除codeigniter文件夹。将应用程序,系统文件夹直接放在DIV文件夹中。 还有htaccess
RewriteEngine on
RewriteBase /dev/
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]
并更改base_url http://www.mysite.com/dev/
我希望这会对你有所帮助
答案 1 :(得分:1)
将base_url更改为http://www.yoursite.com不要将应用程序文件夹名称放在基本URL中,index.php文件将读取它,因为它是从index.php设置的。 我希望这能解决你的问题
答案 2 :(得分:1)
如果您已经在localhost上开发了windows并且服务器是linux,则必须将控制器和模型php文件以大写字母开头。
例如:
ctl_base.php - >的 Ctl_base.php 强>
答案 3 :(得分:0)
尝试使所有conterollers和模型文件首字母大写。例如:myController.php - > MyController.php