0

我是使用 CodeIngiter 框架的新手。我在本地主机上测试了我的代码。它完美地工作。

但是当我把文件放在远程服务器上时。它给了我:

“404 页面未找到 - 未找到您请求的页面。”

当我通过 url 调用控制器时:http ://www.mysite.com/dev/application/facebook/show_info

但是欢迎页面正确显示。我可以修改welcome.php 控制器来检查基本url。然后,我测试了 url,所以我尝试按照字母大小写(因为我的控制器类被称为: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
    │   |

.ht 访问:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]

基本网址:

http://www.mysite.com/dev/application/

4

4 回答 4

2

首先,您应该从结构中删除 codeigniter 文件夹。将您的应用程序、系统文件夹直接放在您的 DIV 文件夹中。而且在 htaccess

RewriteEngine on
RewriteBase /dev/
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]

并更改 base_urlhttp://www.mysite.com/dev/ 我希望这会对你有所帮助

于 2013-07-09T12:23:47.487 回答
1

将您的 base_url 更改为http://www.yoursite.com不要将应用程序文件夹名称放在基本 url 中,index.php 文件将读取它,因为它是从 index.php 设置的。我希望这能解决你的问题

于 2013-07-09T11:34:45.500 回答
1

如果您在 localhost 上的 windows 上开发并且服务器是 linux,您必须将控制器和模型 php 文件以大写开头。
例如: ctl_base.php -> Ctl_base.php

于 2016-04-13T19:16:05.453 回答
0

尝试将所有控制器和模型文件的首字母大写。例如:myController.php -> MyController.php

于 2016-04-18T21:33:21.967 回答