yii伪静态设置

jerry Yii 2016年01月28日 收藏

Apache伪静态配置:

1. 打开httpd.conf, 去掉

  1. LoadModule rewrite_module modules/mod_rewrite.so

前面的注释#。

2. 修改网站根目录的.htaccess文件:

  1. <IfModule mod_rewrite.c>    
  2.   Options +FollowSymLinks  
  3.   IndexIgnore */*  
  4.   # 开启rewrite模块
  5.   RewriteEngine on  
  6.   # if a directory or a file exists, use it directly  
  7.   RewriteCond %{REQUEST_FILENAME} !-f
  8.   RewriteCond %{REQUEST_FILENAME} !-d
  9.   
  10.   # 定向到index.php  
  11.   RewriteRule . index.php  
  12.   # 设置不能执行php权限的目录
  13.   RewriteRule assets/(.*).(php)$ – [F]  
  14.   RewriteRule framework/(.*).(php)$ – [F]
  15.   RewriteRule requirements/(.*).(php)$ – [F]
  16.   RewriteRule public/(.*).(php)$ – [F] 
  17.   RewriteRule themes/(.*).(php)$ – [F]
  18.   RewriteRule uploads/(.*).(php)$ – [F] 
  19.   
  20.   # 设置环境限制
  21.   #php_value upload_max_filesize 50M
  22.   #php_value post_max_size 60M
  23.   #php_value max_execution_time 2000  
  24.   
  25.   </IfModule> 
  26.   
  27.   <IfModule mod_expires.c>
  28. # Activate mod_expires for this directory
  29. ExpiresActive on
  30. # locally cache common image types for 7 days
  31. ExpiresByType image/jpg "access plus 7 days"
  32. ExpiresByType image/jpeg "access plus 7 days"
  33. ExpiresByType image/gif "access plus 7 days"
  34. ExpiresByType image/png "access plus 7 days"
  35. # cache CSS files for 24 hours
  36. ExpiresByType text/css "access plus 24 hours"
  37. </IfModule>

3. 修改protected/config/main.php文件:

  1. 'urlManager'=>array(
  2. //'urlFormat'=>'path',
  3. 'showScriptName'=>false,
  4. //'urlSuffix'=>'.htm',
  5. 'rules'=>array(
  6. 'sitemap\.xml' => 'site/sitemap', //网站地图
  7. 'sitemap\.xsl' => 'site/sitemapxsl', //网站索引
  8. 'page/<id:\w+>'=>'page/index', //单页
  9. '<controller:\w+>/<action:\w+>/cat_<catalog_id:\d+>/page_<page:\d+>'=>'<controller>/<action>', //分页
  10. '<controller:\w+>/<action:\w+>/page_<page:\d+>'=>'<controller>/<action>', //分页
  11. '<controller:\w+>/<action:\w+>/cat_<catalog_id:\d+>' => '<controller>/<action>',  //内容列表
  12. 'tag/index/<tag:\w+>' => 'tag/index',            //标签搜索页
  13. '<controller:\w+>/<id:\d+>'=>'<controller>/view',
  14. '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
  15. '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
  16. ),
  17. ),

Nginx伪静态设置

1. 修改nginx.conf文件:

  1. location / {
  2.         if (!-e $request_filename){
  3.             rewrite ^/(.*) /index.php last;
  4.         }      
  5.     }

2. 同上3

这样访问路径就是path形式的。