cyask3.2伪静态方法

cyask3.2本身没有处理页面静态的方法,只能自己动手修改模板和添加重写规则,在这里向大家介绍下我的处理方法:

1. URL重写

 分别介绍两个容器的做法(IIS7.5 和 Nginx)

 a. IIS7.5: 在IIS7.5中一是使用本身带有URL重写组件很方便(可以查找相关教程),再一个就是使用ISAPI,使用ISAPI时会用到两个文件一个是Rewrite.dll用于添加ISAPI筛选器,另一个是httpd.ini用于重写URL规则,两个文件最好都放在网站根目录下面。好,下面就是httpd.ini中的内容(url重写规则):

  [ISAPI_Rewrite]
  RewriteRule (.*)/bid-([0-9]+)\.html $1/browse.php\?sortid=$2
  RewriteRule (.*)/bid-([0-9]+)-([0-9]+)\.html $1/browse.php\?sortid=$2&type=$3
  RewriteRule (.*)/bid-([0-9]+)-([0-9]+)-([0-9]+)\.html $1/browse.php\?sortid=$2&type=$3&page=$4
  RewriteRule (.*)/mid-(.*) $1/member.php\?uid=$2
  RewriteRule (.*)/qid-(.*) $1/question.php\?qid=$2
  RewriteRule (.*)/nid-(.*) $1/notice.php\?id=$2

 b. Nginx: Nginx相对比较简单,只要在/etc/nginx/sites-enabled/下的网站配置文件中的 server{ 内写上下面的规则:

   rewrite ^(.*)/bid-([0-9]+).html$ $1/browse.php?sortid=$2 last;
        rewrite ^(.*)/bid-([0-9]+)-([0-9]+).html$ $1/browse.php?sortid=$2&type=$3 last;
        rewrite ^(.*)/bid-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/browse.php?sortid=$2&type=$3&page=$4 last;
        rewrite ^(.*)/mid-(.*)$ $1/member.php?uid=$2 last;
        rewrite ^(.*)/qid-(.*)$ $1/question.php?qid=$2 last;
        rewrite ^(.*)/nid-(.*)$ $1/notice.php?id=$2 last;
2. 修改模板及php文件

 主要修改和重写相关的URL地址,和以上规则保持一致,下面会列上要修改的模板及php文件:

 a. 模板:/templates/default

  browse.html

  browse_more.html

  index.html

  question_nosolve.html

  question_share.html

  question_solve.html  

  question_vote.html 

  search.html

  b. php文件: question.php,response.php,browse.php 

 

所需文件

Rewrite.dll:https://files.cnblogs.com/jiangyao/Rewrite.rar

http.ini:https://files.cnblogs.com/jiangyao/httpd.rar

修改后的模板及PHP文件:https://files.cnblogs.com/jiangyao/%e4%bf%ae%e6%94%b9%e6%96%87%e4%bb%b6.rar

 

OVER...

posted @ 2010-10-11 00:45  jiangyao  阅读(380)  评论(0编辑  收藏  举报
我要啦免费统计