费了将近1天的时间的时间终于将DZ 目录方式伪静态设置成功了// 现在我贴出帖子给大家 分享下...
dz目录式伪静态 已经全面支持 X3.0和2.5
首先我把我自己的环境公布下 lnamp 环境.... apache端口不对外... 简单说 也是 lamp 环境....
效果 是这样的 .
例如:首页:http://www.51buyhost.com
栏目页:http://www.51buyhost/nginx/
内容页:http://www.51buyhost/nginx/826/
如果是 跟我环境差不多的话 那就更好办了
我的lanmp 环境搭建方法 http://www.51buyhost.com/thread-3374-1-1.html
apache端口不对外.所以是8080 如果大家是单一的lamp 环境的话 请把 apache配置文件中的 8080 改成80 即可
首先把apache的主配置文件打开需要更改两个地方
①: 检查Apache是否开启.htaccess支持
vi /etc/httpd/conf/httpd.conf
AllowOverride All #如果后面参数为None需要修改为All(大概在338行)
②: 再把apache最后一行添加一个映射代码如下:
Include /etc/httpd/conf/51buyhos.conf
:wq! 退出
意思就是说所有的规则全部在51buyhost.conf下进行的
我把我自己换的 51buyhost.conf配置文件帖出来..
复制代码
################################################
NameVirtualHost *:8080
<VirtualHost *:8080>
DocumentRoot "/data/jock1_com"
ServerName www.51buyhost.com
ServerAlias jock.com
<Directory "/data/jock1_com">
allow from all
Order allow,deny
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_URI} !image/admincp/getcolor.htm$
RewriteRule ^(.*)\.htm$ - [F,L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule .*/(.+).php$ $1.php?%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^special/(.+)/$ portal.php?mod=topic&topic=$1&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule article-([0-9]+)-([0-9]+)\.html$ portal.php?mod=view&aid=$1&page=$2&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule forum-([0-9a-z_]+)-([0-9]+)\.html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule thread-([0-9]+)-([0-9]+)\.html$ forum.php?mod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule group-([0-9]+)-([0-9]+)\.html$ forum.php?mod=group&fid=$1&page=$2&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule space-(username|uid)-(.+)\.html$ home.php?mod=space&$1=$2&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^([a-z]+)-(.+)\.html$ $1.php?rewrite=$2&%1 [L,NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule /m([0-9]+)(/([0-9]+))?(/)?$ forum.php?mod=viewthread&tid=$1&extra=page\%3D$5&page=$3&%1 [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^([0-9a-z_]+)(/([0-9]+))?(/)?$ forum.php?mod=forumdisplay&fid=$1&page=$3&%1 [L,NC]
</IfModule>
</Directory>
</VirtualHost>
######################################
上面就是整个规则了...
接下来 我们去官方下载 dz的安装程序 x2.5也好 .x3.也好.我都测试过了全部正常
安装程序我就不说了...
程序装完之后我们还得把附件里面的东西传到 网页程序的根目录里面去 ... 人家会说 是虚拟空间才会做这样的事情 VPS 或者是独立服务器 根本不需要. 错... 还真的需要 我亲自测过...不传的话还真不行
传完之后我们需要设置的地方有几处..
① :首先
打开source\function下的function_core.php
找到
if($type == 'forum_forumdisplay')
{
list(,,, $fid, $page, $extra) =
func_get_args();
$r =
array(
'{fid}' => empty($_G['setting']['forumkeys'][$fid]) ? $fid :
$_G['setting']['forumkeys'][$fid],
'{page}' => $page ? $page : 1,
);
} elseif($type == 'forum_viewthread')
{
list(,,, $tid, $page, $prevpage,
$extra) = func_get_args();
$r =
array(
'{tid}' =>
$tid,
'{page}' => $page ? $page :
1,
'{prevpage}' => $prevpage && !IS_ROBOT ? $prevpage :
1,
);
改成
if($type == 'forum_forumdisplay')
{
list(,,, $fid, $page, $extra) =
func_get_args();
$r =
array(
'{fid}' => empty($_G['setting']['forumkeys'][$fid]) ? $fid :
$_G['setting']['forumkeys'][$fid],
'{page}' => $page ,
);
} elseif($type == 'forum_viewthread')
{
list(,,, $tid, $page, $prevpage,
$extra) = func_get_args();
$fid =
DB::result_first("SELECT fid FROM ".DB::table('forum_thread')." WHERE tid =
'$tid'");
$r =
array(
'{fid}' => empty($_G['setting']['forumkeys'][$fid]) ? $fid :
$_G['setting']['forumkeys'][$fid],
'{tid}' =>
$tid,
'{page}' => $page
,
'{prevpage}' => $prevpage && !IS_ROBOT ? $prevpage :
1,
);
不会改的直接把上面那一段换成下面这一段就行了.. 我相信大家还是会做吧..那么简单
② 登陆刚装好的dz 后台打开seo 设置..如下图
然后进入网站后吧->''seo设置"->"url静态化"
在"论坛主题列表页"的格式中填写:{fid}/{page}
在"论坛主题内容页"的格式中填写:{fid}/{tid}/{page}
全局--SEO设置-

然后工具,更新缓存,即实现了版块目录化,贴子目录化
在"论坛"-"版块管理"中的"绑定别名"即是版块目录名:
如:centos论坛官网的 nginx 版块中的"绑定别名"为"nginx",那么访问地址就是:http://www.51buyhost.com/nginx/
注意 我是在本地测试的... 我的测试域名 www.jock.com 我设置一个版块名称叫CF 效果如下:

[size=0.83em]QQ截图20130522000832.png (94.36 KB, 下载次数: 0)
下载附件 保存到相册
[color=rgb(153, 153, 153) !important]前天 00:03 上传
上面是我用 X3 测试成功的..如果 有人也想这样的话 ...请回帖我告诉大家.....
|