这杀了我
我有什么?CI版本:2.1.4模块化扩展-Wiredesignz的HMVC是一个基本的codeigniter(hmvc)项目,该项目可以很好地与php 5.5.3在本地服务器(mamp)中的设置一起使用
将项目移至公共Web服务器后出现的问题是我更改了以下内容。——application / config / config.php
$ config ['base_url'] =' http://example.com/ ';
——application / config / database.php
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'newdbusername';
$db['default']['password'] = 'newdbpassword';
$db['default']['database'] = 'newdbname';
—-public_html / .htaccess
RewriteEngine On
RewriteBase /
#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
#When your application folder isn't in the system folder
#This snippet prevents user access to the application folder
#Submitted by: Fabdrol
#Rename 'application' to your applications folder name.
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
#Checks to
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
# Submitted by: ElliotHaughin
ErrorDocument 404 /index.php
由于我的索引页面将是“主页”模块的索引功能,因此我没有触摸application / config文件夹中的routes.php文件。以下是routes.php的设置
$route['default_controller'] = "home";
$route['404_override'] = '';
每当尝试访问http://example.com/时,我都会收到以下消息
404找不到页面未找到您请求的页面。
如果我尝试example.com/home,但仍收到相同的消息,但example.com/welcome仍然欢迎您访问codeigniter页面
到底是怎么回事!!!???为什么我不能从模块访问我的任何页面?我错过了什么?还有其他人遇到这个问题吗?
ps:我的cpanel使用php 5.3.27如果有帮助
更新::下面是我默认的控制器的索引函数
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends MX_Controller
{
function __construct() {
parent::__construct();
}
function index()
{
$this->load->library('recaptcha');
$data['recaptcha_html'] = $this->recaptcha->recaptcha_get_html();
$data['view_file'] = "checkmember";
$this->load->module('templates');
$this->templates->checkinfo();
}
============
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
/**
* Index Page for this controller.
*
* Maps to the following URL
* http://example.com/index.php/welcome
* - or -
* http://example.com/index.php/welcome/index
* - or -
* Since this controller is set as the default controller in
* config/routes.php, it's displayed at http://example.com/
*
* So any other public methods not prefixed with an underscore will
* map to /index.php/welcome/<method_name>
* @see http://codeigniter.com/user_guide/general/urls.html
*/
public function index()
{
$this->load->view('welcome_message');
}
}
/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */
终于解决了问题。这是我在modules文件夹中的文件夹结构。
—模块/
- - -/家
———————— //控制器——-> home.php
———————— /模型——-> mdl_home.php
———————— //视图——-> viewfile.php
我要做的就是更改“ Controllers”,“ Models”和“ Views”文件夹的大小写,然后我又恢复了业务。
现在文件夹结构是这样的,并且可以正常工作
—模块/
- - -/家
———————— //控制器——-> home.php
———————— /模型——-> mdl_home.php
———————— // views ——-> viewfile.php
阿什什
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句