2016-11-21 139 views
0

我一直在尋找很多,並測試了幾種不同的方法來解決這個問題......但目前爲止沒有任何工作。我剛剛上傳了一個網站到我的服務器,經過所有必要的更改後,它返回了以下錯誤 - 我以前從未見過。Codeigniter 1.7.2 404頁未找到

This is the screen shot when I first uploaded the files online...

嗯,有些測試和研究後,我改變了我的控制器的名字都大寫 - 和模型 - 和頁面停止的「PHP」部分顯示出來。

這裏是我的設立:

FOLDER:網站是一個文件夾/工地內/

application/ 
favicon/ 
system/ 
index.php 
.htaccess 
robots.txt 

控制器:我測試過更改爲是CI_Controller - 即使我工作CI 1.7.2 - 和__construct()...沒有工作

class Home extends Controller 
{ 

    // SET LAYOUT DEFAULT 
    public $layout = 'default'; 

    // SET TITLE DEFAULT 
    public $title = ''; 

    // SET CSS DEFAULT 
    public $css = array('scripts/fancybox/jquery.fancybox'); 

    // SET JAVASCRIPT DEFAULT 
    public $js = array('scripts/fancybox/jquery.fancybox.pack'); 

    function Home() { 

     parent :: Controller(); 

     // LOAD Libraries 
     $this->load->library(array('createdate','minitextile','showimages')); 

     // LOAD Models 
     $this->load->model('site_model'); 
    } 

    function index() { 

     $data['website_info'] = $this->config->item('w_infos'); 
     // LOAD VIEWS 
     $this->load->view ('include/home_view', $data); 
    } 
} 

CONFIG - 我已經把只有在這裏呈香...

$config['base_url'] = "http://domain.com/site/"; 

$config['index_page'] = ""; 

$config['uri_protocol'] = "REQUEST_URI"; // Tested with AUTO, didn't work 

$config['enable_hooks'] = TRUE; 

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-'; 

$config['enable_query_strings'] = FALSE; 
$config['controller_trigger'] = 'c'; 
$config['function_trigger']  = 'm'; 
$config['directory_trigger'] = 'd'; 

的.htaccess - 該文件是基於文件夾/工地內/

<IfModule mod_rewrite.c> 

    RewriteEngine on 
    RewriteBase /site/ 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [L] 

</IfModule> 

<IfModule !mod_rewrite.c> 
    # Without mod_rewrite, route 404's to the front controller 
    ErrorDocument 404 /index.php 
</IfModule> 

途徑:

$route['default_controller'] = "home"; 

我的日誌:這是控制器更名

DEBUG - 2016-11-21 15:54:22 --> Config Class Initialized 
DEBUG - 2016-11-21 15:54:22 --> Hooks Class Initialized 
DEBUG - 2016-11-21 15:54:22 --> URI Class Initialized 
ERROR - 2016-11-21 15:54:22 --> 404 Page Not Found --> home 

名稱變更(到帽子的)之前,它是這樣的:

DEBUG - 2016-11-21 14:08:28 --> Config Class Initialized 
DEBUG - 2016-11-21 14:08:28 --> Hooks Class Initialized 
DEBUG - 2016-11-21 14:08:28 --> URI Class Initialized 
DEBUG - 2016-11-21 14:08:28 --> No URI present. Default controller set. 
DEBUG - 2016-11-21 14:08:28 --> Router Class Initialized 
DEBUG - 2016-11-21 14:08:28 --> Output Class Initialized 
DEBUG - 2016-11-21 14:08:28 --> Input Class Initialized 
DEBUG - 2016-11-21 14:08:28 --> Global POST and COOKIE data sanitized 
DEBUG - 2016-11-21 14:08:28 --> Language Class Initialized 
ERROR - 2016-11-21 14:08:28 --> 404 Page Not Found --> home/index 

我知道,我是新的,並且有很多帖子這個問題在那裏......我只是在做了一些(很多)測試我的自我之後問 - 至少就我的知識而言:D我一直在使用這個CI版本並設置了一段時間 - 並且意義重大升級到CI 3 - 我已經測試/改變了我可以想象的所有東西,並且面臨着許多不同的主機/服務器,但我仍然無法找到解決方法。

回答

1

這可能是因爲

function Home() { 

    parent :: Controller(); 

    // LOAD Libraries 
    $this->load->library(array('createdate','minitextile','showimages')); 

    // LOAD Models 
    $this->load->model('site_model'); 
} 

應該http://www.codeigniter.com/user_guide/general/controllers.html#class-constructors

function __construct() { 

    parent::__construct(); 

    // LOAD Libraries 
    $this->load->library(array('createdate','minitextile','showimages')); 

    // LOAD Models 
    $this->load->model('site_model'); 
} 

確保您的文件名稱更正也升級Home.php時僅第一個字母大寫。如此處所述

+0

你的意思是'parent :: __ construct();',對吧? ;-) –

+0

@RocketHazmat哎呀錯別字它現在已修復 – user4419336

+0

感謝您的提示! – ArtFranco

0

想通了!感謝您的幫助......但這是PHP配置的問題...... short_open_tag未在服務器上激活......並花了我一段時間纔看到它! :p所以提示:檢查一些PHP的配置了。