2013-04-02 46 views
1

工作我使用Yii框架,並有在.htaccess下面的代碼:阿帕奇重寫引擎不是子域

RewriteEngine on 

# if a directory or a file exists, use it directly 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

# otherwise forward it to index.php 
RewriteRule . index.php 

而且我用這個代碼URL管理器,讓搜索引擎優化的URL:

'urlManager'=>array(
    'urlFormat'=>'path', 
    'rules'=>array(
    ''=>'site/index', 
    'admin'=>'admin/default/login', 
    '<action:\w+>'=>'site/<action>', 
    array('page/view', 'pattern'=>'/<url:(\w|-)+>.html', 'caseSensitive'=>false), 
    array('category/view', 'pattern'=>'category/<url:(\w|-)+>', 'caseSensitive'=>false), 
    array('product/view', 'pattern'=>'product/<url:(\w|-)+>', 'caseSensitive'=>false), 
), 
    'showScriptName'=>false, 
), 

它可以在我的本地計算機上正常工作。但是,當我試圖將它應用於我的VDS時,我得到服務器,只有當此代碼在子域上工作時,例如:我有blah-blah.com - 此代碼有效,但如果我有new.blah-blah.com這應該是不同的網站,其中有毫無共同之處blah-blah.com)我得到以下錯誤(內部服務器錯誤500): 內部服務器錯誤

服務器遇到一個內部錯誤或配置錯誤,無法完成您的請求。

請聯繫服務器管理員,[我的電子郵件],並告知他們錯誤發生的時間,以及您可能已經犯的任何可能導致錯誤的事情。

有關此錯誤的更多信息可能在服務器錯誤日誌中可用。

在apache的日誌中我沒有發現任何關於它的信息。

回答

0

您可以將錯誤記錄到文件或發送到郵件。

在你的配置

/main.php

'log'=>array(
        'class'=>'CLogRouter', 
        'routes'=>array(
          array(
            'class'=>'CFileLogRoute', 
            'levels'=>'error, warning', 
          ), 
          array(
            'class'=>'CEmailLogRoute', 
            'levels'=>'error, warning', 
            'emails'=>'[email protected]', 
          ), 

        ), 
      ), 
+0

我已經記錄錯誤和警告,但問題是,我恰好有Apache的500錯誤頁面,而不是被Yii產生的東西。 –