偶然输入的时候 在URL中多打了一个中文逗号。
然后就报错了。首先是找不到路由,然后是CDbLogRoute的记录出错,因为MYSQL是UTF8的。
CDbException: CDbCommand 无法执行 SQL 语句: SQLSTATE[HY000]: General error: 1366 Incorrect string value: ‘\xA3\xAC/squ…’ for column ‘message’ at row 1 (D:\www\root\YiiRoot\framework\db\CDbCommand.php:336)
#0 D:\www\root\donever\protected\components\DbLogRoute.php(30): CDbCommand->execute()
#1 D:\www\root\YiiRoot\framework\logging\CLogRoute.php(98): DbLogRoute->processLogs(Array)
#2 D:\www\root\YiiRoot\framework\logging\CLogRouter.php(122): CLogRoute->collectLogs(Object(CLogger), true)
#3 D:\www\root\YiiRoot\framework\base\CComponent.php(571): CLogRouter->processLogs(Object(CEvent))
#4 D:\www\root\YiiRoot\framework\base\CApplication.php(197): CComponent->raiseEvent(‘onEndRequest’, Object(CEvent))
#5 D:\www\root\YiiRoot\framework\base\CApplication.php(174): CApplication->onEndRequest(Object(CEvent))
#6 D:\www\root\YiiRoot\framework\base\CApplication.php(721): CApplication->end(1)
#7 [internal function]: CApplication->handleException(Object(CHttpException))
#8 {main}
Previous exception:
CHttpException: 无法解析请求 "topic��/square"。 (D:\www\root\YiiRoot\framework\web\CWebApplication.php:281)
#0 D:\www\root\YiiRoot\framework\web\CWebApplication.php(136): CWebApplication->runController(‘topic??/square’)
#1 D:\www\root\YiiRoot\framework\base\CApplication.php(158): CWebApplication->processRequest()
#2 D:\www\root\donever\index.php(30): CApplication->run()
#3 {main}
$_SERVER=array (
‘FCGI_X_PIPE’ => ‘\\\\.\\pipe\\IISFCGI-7eced219-ff93-4883-9069-692c0fc1978a’,
‘ALLUSERSPROFILE’ => ‘C:\\Documents and Settings\\All Users’,
‘APP_POOL_ID’ => ‘DefaultAppPool’,
后面的省略了。SERVER的信息暴露了。
请教各位大虾 怎么解决呢?出错的信息含有UTF8字符和GBK字符……