我是codeigniter的新手。在我的localhost上开发了一个Web应用程序。所以我在服务器上上传了我的网站,然后我导入了我的数据库。之后我在database.php文件中更改了数据库的设置..而且我也更改了config.php文件中的基本URL。
我收到了 404 Page Not Found。 找不到您请求的页面。我不知道出了什么问题..我已经搜索了很多,但没有任何帮助。我的.htaccess文件是空的..意思是里面没有一行。还有一件事是我从 godaddy 主机购买此主机可能会有所帮助。
我的routes.php
$route['default_controller'] = '';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
my controller doctorscont.php
<?php defined('BASEPATH') OR exit('No direct script access allowed');
class Doctorscont extends CI_Controller {
public function index() {
here is my code..... */
}
}
和我的配置&gt;的config.php
$config['base_url'] = '';
$config['index_page'] = 'index.php';
[1]:
答案 0 :(得分:2)
你必须在routes.php。
中定义doctorscont的路线请在routes.php的末尾添加此行,然后访问
$route['doctorscont'] = 'Doctorscont';
如果仍然出现404错误,请尝试如果它已打开,您可能需要删除URL上的index.php。要完成此任务,请访问CodeIgniter URLs Guide
编辑:
使用以下内容在您的根目录下创建一个.htaccess文件(与系统和应用程序相同的文件夹):
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
打开config.php并编辑此行:
$config['index_page'] = 'index.php';
到此:
$config['index_page'] = '';
现在你可以得到你想要的东西。
答案 1 :(得分:1)
在版本3+中,文件名必须包含每个文件的第一个字母作为大写。它将在localhost环境中以小写形式工作,但不在服务器上工作。
将文件重命名为“ D octorscont.php”,您可以将类名称用作小写。
class Doctorscont extends CI_Controller
修改:http://www.codeigniter.com/user_guide/general/controllers.html#let-s-try-it-hello-world
答案 2 :(得分:0)
您似乎尚未在apache2配置级别进行一些更改,请执行以下更改。
1)sudo a2enmod重写
2)gedit /etc/apache2/apache2.conf
3)添加到conf文件的末尾
<Directory /var/www/html/>
AllowOverride All
</Directory>
4)通过以下命令重启apache2服务。 服务apache2重新启动
好运。