2010-11-18 131 views
1

我剛剛從文檔中查看yii-blog.pdf,當我嘗試登錄到gii時,它始終向我顯示登錄表單。yii框架:無法登錄到gii

我創建這個喜歡http://yii.blog 一個虛擬主機,然後試圖從http://yii.blog/index.php?r=gii

訪問在config/main.php

'modules'=>array(
    // uncomment the following to enable the Gii tool 
    'gii'=>array(
     'class'=>'system.gii.GiiModule', 
     'password'=>'12345', 
       //'ipFilters'=>array('127.0.0.1','yii.blog') 
    ), 
), 

當我輸入了錯誤的密碼形式可以說「密碼錯誤。」 但是當我輸入正確的那個時,它沒有說出任何錯誤,它一直向我顯示登錄表單。

我正在使用YII 1.1.5

任何想法如何解決這個問題?

+0

我們的答案是否有助於解決您的問題? – thaddeusmt 2010-12-07 17:15:00

+0

只是安裝新的xampp,它的工作原理。我不知道爲什麼它不適用於舊的xampp – nightingale2k1 2011-01-16 07:23:24

回答

2

我對Chrome有問題,重新啓動Chrome爲我工作。 Firefox根本沒有問題。

1

聽起來像會話/ cookie問題。嘗試像Don提到的那樣重新啓動瀏覽器,或使用其他瀏覽器。還有一個緩存清除刷新(Ctrl + F5)可能會起作用。

我也不得不設置網址別名,使GII工作,因爲我使用的URL重寫規則,就像這樣:

'components'=>array(
    'urlManager'=>array(
    'rules'=>array(
     'gii'=>'gii', 
     'gii/<controller:[\w\-]+>'=>'gii/<controller>', 
     'gii/<controller:[\w\-]+>/<action:\w+>'=>'gii/<controller>/<action>', 
    ) 
) 
) 

如果您在使用urlManager(它實際上看起來像你試試這個不)。

+0

這個設置對我來說非常有效 – Asped 2014-03-18 21:25:14

0

一年後.....我也有這個錯誤。在我的情況下,我有兩個版本的PHP。首先,我用PHP 5.3.0安裝了Wamp 2.0i。有了這個PHP版本,我安裝了yii 1.1.8並開始了一些測試項目。

之後,我從另一臺機器上的另一個WAMP安裝中複製了PHP 5.2.5的文件夾。當我在WAMP托盤菜單選擇器中選擇PHP 5.2.5時,我不能像nightingale2k1所說的那樣連接到gii。

2

登錄到Gii需要使用PHP服務器會話,因此在另一個瀏覽器中測試或清除緩存和cookie有助於排除瀏覽器端可能會干擾會話處理的問題。然而,如果失敗,則可能需要檢查你的PHP配置:

  • 使用命令行語句php -i |grep session.save
  • 保存含<?php phpinfo(); ?>您的服務器上,並認爲它在瀏覽器中的文件,然後做一個頁內搜索「session.save」

在我的情況下,它是我的PHP.ini中的配置錯誤:未配置默認會話路徑。我編輯了我的服務器的配置文件併爲session.save_path設置了有效路徑。我在我的默認PHP.ini中取消註釋了相關行,並且在包含以下兩行之後,我可以使用有效密碼登錄到Gii - 儘管可以使用其他會話配置。

session.save_handler = files 
session.save_path = "/tmp" 
0

刪除我的域名餅乾我的瀏覽器的固定的這個問題對我來說

0

檢查你的php.ini爲您所設置的目錄爲session.save_path的,

php -i | grep session.save_path 

然後確保該文件夾可由Web用戶/組寫入。

例如:

sudo chgrp www-data /opt/lampp/temp/ 
0

清潔餅乾,或者更具體的所有PHPSESSID的。有時它與上層的領域混雜在一起。

0

我有同樣的問題(在'Yii示例應用程序'登錄工作成功,但Gii沒有和沒有任何錯誤信息)。

session.save_path = "/tmp" 

通過

session.save_path = "d:\tmp" 

附註:小時後我改變我的Denwer服務器php.ini解決問題我希望這可以幫助別人。

0

我的問題是我session組件,我已經建立cookieModenone

'components'=>array(
    /* ... */ 
    'session' => array (
     'autoStart' => false, 
     'cookieMode' => 'none', /* This means gii cannot set cookies! */ 
    ), 
    /* ... */ 
); 

這裏cookieMode應設置爲only代替:

'components'=>array(
    /* ... */ 
    'session' => array (
     'autoStart' => false, 
     'cookieMode' => 'only', /* "only" will allow gii to set cookies */ 
    ), 
    /* ... */ 
); 
0

的答案都不爲我工作。 我一起刪除了密碼。

'configWeb' => array(
    // Modules 
    'modules' => array(
     'gii' => array(
      'class' => 'system.gii.GiiModule', 
      'password' => false, 
     ), 
    ), 

我們使用多個配置文件用於不同的環境,如開發,分段和生產。當我遇到問題時,我可能會編輯錯誤的文件。