2009-08-11 121 views
6

我剛將一個網站移到了生產服務器上,並且一次工作的CodeIgniter安裝現在返回一個空白屏幕。我相信這是由於空白,但你應該如何找到這樣的東西?帶CodeIgniter的空白屏幕

回答

11

檢查事項:

  • 裏面的config.php,請確保您的$config['base_url']設置正確
  • 是你能夠複製你的.htaccess呢?
  • 在兩臺機器上都有相同的PHP版本嗎?如果你的回答是肯定的,我會再次問你:你確定嗎?
  • 你的$ db ['default'] ['hostname']的值是多少?
  • 您是否在本地和生產服務器上具有相同的數據庫設置?有可能是與主機名,用戶名,密碼和數據庫名稱的差異

其他事情可以做:在您的生產服務器和檢查

  • 設置$db['default']['db_debug']TRUE
  • 部署一個新的CodeIgniter安裝如果你能看到東西
  • 如果你仍然看到一個空白頁面,部署一個包含文本的PHP文件並告訴我們你看到的是什麼
+0

事實證明,服務器運行的是PHP 4而不是5.希望託管公司明天爲我更新它。感謝回覆。 – Tisch 2009-08-11 20:12:45

+0

@randell我的應用程序在CI上並運行在heroku服務器上.Index.php是echo「Hello」,但是我的默認控制器不運行,我不確定heroku和我的應用程序的php版本(CI ='2.1。 2',PHP = 5.5.16) – HaRsH 2014-08-30 09:31:10

+2

@HaRsH,確保'display_errors'和'display_startup_errors'設置爲'true'。還要確保'error_reporting'設置爲'E_ALL'。例如,請參閱http://stackoverflow.com/a/21429652/106778。 – Randell 2014-08-31 11:09:50

7

我遇到同樣的問題,我通過將我的日誌文件夾設置爲可寫入來解決它。 看來,如果您打開日誌記錄,並且您的服務器上的日誌文件夾不可寫,則CodeIgniter會向您顯示一個空白頁面。

+2

你剛從3小時的狩獵中拯救了我。我們確實需要檢查該目錄的可寫入性。 – 2011-11-22 01:54:35

10

該問題可能是由於缺少php模塊「mysqli」。這是您調用數據庫的驅動程序。我會檢查:

php -i | grep mysqli

php -m

+0

這已經解決了我的問題兩次了。如果PHP沒有安裝適當的數據庫擴展,CodeIgnitor將會空白屏幕 – 2012-12-09 10:01:21

+0

這也解決了我的問題,謝謝@rlane。即使在apache2日誌中也沒有錯誤,表明這是一個問題... – Jarrett 2013-09-19 18:58:07

+0

謝謝。這是我在Heroku上託管時遇到的問題。我必須更新composer.json以在''require''部分下包含'「ext-mysql」:「*」,然後運行'composer update'來更新composer.lock文件。 – 2015-08-07 14:10:21

0

我有simillar問題。我嘗試了人們寫的所有可能的方式。但沒有人爲我工作。但是,finnaly我發現我的index.php通過ftp傳輸到服務器時不完整。所以,如果任何人仍然無法解決死亡白屏可能你的index.php不完整。

visibility function_name() 
{ 
    $this->load->helper('url'); 

} 

它會告訴你錯誤或您加載一個觀點:

1

當你創建一個功能,例如加載您的網址幫手。

0

如果您已移至新服務器,請確保服務器上安裝了PHP-5。屏幕爲空的原因是服務器無法呈現PHP。

鍵入此線並重新啓動後:

命令和apt-get安裝PHP5中的libapache2-MOD-PHP5

要重新啓動:

sudo service apache2 restart 

當然,這是假設您可以通過具有管理權限的SSH客戶端訪問服務器。

好運,尼爾

0

在你的index.php文件中聲明此地方:

function exception_handler($exception) { 
    echo "Uncaught exception: " . $exception->getMessage(); 
} 

set_exception_handler('exception_handler'); 

看來笨只處理從CI_Exception派生的異常,所以任何未捕獲(V2?)例外情況(來自第三方庫等)不予處理。