Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

房产伪静态的实现方法。

[复制链接]
rikioy 发表于 2011-11-23 14:04:32 | 显示全部楼层 |阅读模式
本帖最后由 rikioy 于 2011-11-28 09:38 编辑

由于实现伪静态需要修改dx代码。所以这里放出一个hack方法。供站长测试。就内置到房产之中了。请站长自行扩展与测试

  1. function_admincp.php rewritedata 函数加入相关
  2. if(in_array('forum_archiver', $_G['setting']['rewritestatus'])) {
  3.                         $data['search']['forum_archiver'] = "/<a href\="\?(fid|tid)\-(\d+)\.html(&page\=(\d+))?"([^\>]*)\>/e";
  4.                         $data['replace']['forum_archiver'] = "rewriteoutput('forum_archiver', 0, '\\1', '\\2', '\\4', '\\5')";
  5.                 }
  6. 后面加入
  7. if(in_array('newhouse_view', $_G['setting']['rewritestatus'])) {
  8.                         $data['search']['newhouse_view'] = "/<a href\="house.php\?mod\=viewhouse&(amp;)?ac\=info&(amp;)?tid=(\d+)?"([^\>]*)\>/e";
  9.                         $data['replace']['newhouse_view'] = "rewriteoutput('newhouse_view', 0, '\\3')";
  10. }
复制代码
  1. $data['rulesearch']['forum_archiver'] = '{action}-{value}.html';
  2.                 $data['rulereplace']['forum_archiver'] = 'index.php?action={action}&value={value}';
  3.                 $data['rulevars']['forum_archiver']['{action}'] = '(fid|tid)';
  4.                 $data['rulevars']['forum_archiver']['{value}'] = '([0-9]+)';

  5. 后面加入
  6. $data['rulesearch']['newhouse_view'] = 'newhouse-{hid}.html';//house
  7.                 $data['rulereplace']['newhouse_view'] = 'house.php?mod=viewhouse&ac=info&tid={hid}';//house
  8.                 $data['rulevars']['newhouse_view']['{hid}'] = '([0-9]+)';//house
复制代码
  1. function_core.php 中 rewriteoutput 函数改造elseif($type == 'forum_archiver') {
  2.                 list(,, $action, $value, $page, $extra) = func_get_args();
  3.                 $host = '';
  4.                 $r = array(
  5.                         '{action}' => $action,
  6.                         '{value}' => $value,
  7.                 );
  8.                 if($page) {
  9.                         $fextra = '?page='.$page;
  10.                 }
  11.         }
  12. 后加入
  13. elseif($type == 'newhouse_view') {
  14.                 list(,,$hid) = func_get_args();
  15.                 $host = '';
  16.                 $r = array(
  17.                         '{hid}' => $hid,
  18.                 );
  19.         }
复制代码
  1. lang_admincp.php 中 'setting_seo_rewritestatus_forum_archiver' => '论坛 Archiver 页',
  2. 后面加入

  3. 'setting_seo_rewritestatus_newhouse_view' => '楼盘浏览页',
复制代码

apache rewrite规则中加入
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^newhouse-([0-9]+)\.html$ house.php?mod=viewhouse&ac=info&tid=$1&%1

聚万家社区 发表于 2011-11-23 14:18:47 | 显示全部楼层
看不懂,表示。
回复

使用道具 举报

聚万家社区 发表于 2011-11-23 14:20:03 | 显示全部楼层
直接放出文件多好?
回复

使用道具 举报

senmu5080 发表于 2011-11-23 17:27:37 | 显示全部楼层
就是啊,要直接点啊,我们都看不懂
回复

使用道具 举报

RenQin 发表于 2011-11-23 17:46:53 | 显示全部楼层
没看明白。
回复

使用道具 举报

fjndzl 发表于 2011-11-23 21:42:21 | 显示全部楼层
回复

使用道具 举报

rstar 发表于 2011-11-23 21:57:59 | 显示全部楼层
iis规则呢?~~~~~~~~
回复

使用道具 举报

聚万家社区 发表于 2011-11-24 11:00:16 | 显示全部楼层
逗你玩..
回复

使用道具 举报

emeok 发表于 2011-11-24 12:08:53 | 显示全部楼层
需要IIS规则。。谢谢。还有就是能不能再傻瓜型点的说明?
回复

使用道具 举报

 楼主| rikioy 发表于 2011-11-24 12:16:50 | 显示全部楼层
IIS规则自己改下吧。

这个就是按照说明在 XX 文件的 XX代码下添加 XX行。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-26 21:51 , Processed in 0.034483 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表