• Apache (.htaccess):

    RewriteEngine On
    ErrorDocument 404 /404.html
    RewriteBase /
    
    # 信息列表
    RewriteCond %{QUERY_STRING} ^(.*)$
    RewriteRule ^listinfo-(.+?)-(.+?)\.html$ /e/action/ListInfo/index\.php\?classid=$1&page=$2
    
    # 信息内容页
    RewriteCond %{QUERY_STRING} ^(.*)$
    RewriteRule ^showinfo-(.+?)-(.+?)-(.+?)\.html$ /e/action/ShowInfo\.php\?classid=$1&id=$2&page=$3
    
    # 标题分类列表页
    RewriteCond %{QUERY_STRING} ^(.*)$
    RewriteRule ^infotype-(.+?)-(.+?)\.html$ /e/action/InfoType/index\.php\?ttid=$1&page=$2
    
    # TAGS信息列表页
    RewriteCond %{QUERY_STRING} ^(.*)$
    RewriteRule ^tags-(.+?)-(.+?)\.html$ /e/tags/index\.php\?tagname=$1&page=$2
    
    # 评论列表页
    RewriteCond %{QUERY_STRING} ^(.*)$
    RewriteRule ^comment-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)\.html$ /e/pl/index\.php\?doaction=$1&classid=$2&id=$3&page=$4&myorder=$5&tempid=$6
  • IIS6 (httpd.ini):

    [ISAPI_Rewrite]
    # 3600 = 1 hour
    CacheClockRate 3600
    RepeatLimit 32
    
    # 信息列表
    RewriteRule ^(.*)listinfo-(.+?)-(.+?)\.html$ $1/e/action/ListInfo/index\.php\?classid=$2&page=$3
    
    # 信息内容页
    RewriteRule ^(.*)showinfo-(.+?)-(.+?)-(.+?)\.html$ $1/e/action/ShowInfo\.php\?classid=$2&id=$3&page=$4
    
    # 标题分类列表页
    RewriteRule ^(.*)infotype-(.+?)-(.+?)\.html$ $1/e/action/InfoType/index\.php\?ttid=$2&page=$3
    
    # TAGS信息列表页
    RewriteRule ^(.*)tags-(.+?)-(.+?)\.html$ $1/e/tags/index\.php\?tagname=$2&page=$3
    
    # 评论列表页
    RewriteRule ^(.*)comment-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)\.html$ $1/e/pl/index\.php\?doaction=$2&classid=$3&id=$4&page=$5&myorder=$6&tempid=$7
    
    # 搜索伪静态
  • IIS7 (web.config):

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
      <system.webServer>
        <!-- 帝国7.2默认规则 IIS7的rule name不能重复相同 -->
        <rewrite>
          <rules>
            <rule name="listinfo">
              <match url="^(.*/)*listinfo-(.+?)-(.+?).html\?*(.*)$" />
              <action type="Rewrite" url="{R:1}/e/action/ListInfo/index.php?classid={R:2}&page={R:3}" />
            </rule>
            <rule name="showinfo">
              <match url="^(.*/)*showinfo-(.+?)-(.+?)-(.+?).html\?*(.*)$" />
              <action type="Rewrite" url="{R:1}/e/action/ShowInfo.php?classid={R:2}&id={R:3}&page={R:4}" />
            </rule>
            <rule name="infotype">
              <match url="^(.*/)*infotype-(.+?)-(.+?).html\?*(.*)$" />
              <action type="Rewrite" url="{R:1}/e/action/InfoType/index.php?ttid={R:2}&page={R:3}" />
            </rule>
            <rule name="tags">
              <match url="^(.*/)*tags-(.+?)-(.+?).html\?*(.*)$" />
              <action type="Rewrite" url="{R:1}/e/tags/index.php?tagname={R:2}&page={R:3}" />
            </rule>
            <rule name="comment">
              <match url="^(.*/)*comment-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)-(.+?).html\?*(.*)$" />
              <action type="Rewrite" url="{R:1}/e/pl/index.php?doaction={R:2}&classid={R:3}&id={R:4}&page={R:5}&myorder={R:6}&tempid={R:7}" />
            </rule>
          </rules>
        </rewrite>
      </system.webServer>
    </configuration>
  • Nginx:

    rewrite ^([^\.]*)/listinfo-(.+?)-(.+?)\.html$ $1/e/action/ListInfo/index.php?classid=$2&page=$3 last;
    rewrite ^([^\.]*)/showinfo-(.+?)-(.+?)-(.+?)\.html$ $1/e/action/ShowInfo.php?classid=$2&id=$3&page=$4 last;
    rewrite ^([^\.]*)/infotype-(.+?)-(.+?)\.html$ $1/e/action/InfoType/index.php?ttid=$2&page=$3 last;
    rewrite ^([^\.]*)/tags-(.+?)-(.+?)\.html$ $1/e/tags/index.php?tagname=$2&page=$3 last;
    rewrite ^([^\.]*)/comment-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)\.html$ $1/e/pl/index.php?doaction=$2&classid=$3&id=$4&page=$5&myorder=$6&tempid=$7 last;
    
    if (!-e $request_filename) {
      return 404;
    }