虽已解决,但仍有不解,先贴出步骤备忘。

ubuntu + nginx 下:

第一步:yii 的main文件

'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false, // 这一步是将代码里链接的index.php隐藏掉。
'rules'=>array(

),
'urlSuffix' =>'.html',
),

 

第二步:nginx

location  /  {

  if  (  !-e $request_filename  )

  {

    rewrite  ^/(.*)  /index.php   last;

  }

}  

备注 :if与括号之间要有空格,否则报错。

第三步:sudo service nginx restart

 

 

mac + apache2 下:

第一步:与上面相同

第二步:在项目下的入口文件index.php的同级,新建.htaccess文件,写入:

Options +FollowSymLinks
IndexIgnore */*
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

 

 

参考资料:

http://www.cnblogs.com/dami520/archive/2012/08/16/2642967.html  //不错

http://zhan.renren.com/itbegin?gid=3602888498031453983&checked=true //不错