一般论坛在根目录下放置,在后台设置默认域名就可以解决这个问题,但是论坛放在一级目录下解决这个问题的时候就会存在一些困难了,那么如何将域名后面的 forum.php 或 portal.php 去掉。这里给大家提供一个方法:如下
Discuz x2 去掉域名后面的/forum.php 或 portal.php 的方法修改方法第一步:
打开根目录下的 index.php
查找:
if(!empty($url)) {
$delimiter = strrpos($url, '?') ? '&' : '?';
if($_GET['fromuid']) {
$url .= $delimiter.'fromuid='.$_GET['fromuid'];
} elseif($_GET['fromuser']) {
$url .= $delimiter.'fromuser='.$_GET['fromuser'];
}
header("HTTP/1.1 301 Moved Permanently");
header("location: $url");
} else {
require './'.$_ENV['curapp'].'.php';
在前面加上:
$url = '';
$_ENV['curapp'] = 'portal';
备注:如果想设置论坛为默认首页,把代码中的 $_ENV['curapp'] = 'portal'; 替换为 $_ENV['curapp'] = 'forum'; 如果想要空间为默认首页:替换为 $_ENV['curapp'] = 'home';
Dsicuz x2.5 去掉域名后面的/forum.php 或 portal.php 的第二个办法:
后台--全局--域名设置--应用域名--设置默认域名为访问域名就可以,如:www.shuoshuoseo.com
上面 2 种方法都可以去掉域名后面的/forum.php 或 portal.php 后缀,可实现 seo.com/misc.php?mod=tag" target="_blank">seo 优化中的 URL 标准化
去掉面包屑导航中的 forum.php 或 portal.php 的第三个办法:
打开模版文件 discuz.htm,查找以下代码
<div>
<a href="./" title="{lang homepage}">$_G[setting][bbname]</a><em>»</em><a href="forum.php"{if $_G['setting']['forumjump']} id="fjump"{/if}>{$_G[setting][navs][2][navname]}</a>$navigation
</div>
打开模版文件 forumdisplay.htm,查找以下代码
<div>
<a href="
s/" title="{lang homepage}">$_G[setting][bbname]</a><em>»</em><a href="
s/"{if $_G['setting']['forumjump']} id="fjump" {/if}>{$_G[setting][navs][2][navname]}</a>$navigation
</div>
打开模版文件 viewthread.htm,查找以下代码
<div>
<a href="./" title="{lang homepage}">$_G[setting][bbname]</a><em>»</em><a href="forum.php"{if $_G['setting']['forumjump']} id="fjump" {/if}>{$_G[setting][navs][2][navname]}</a>$navigation <em>›</em> <a href="forum.php?mod=viewthread&tid=$_G[tid]">$_G[forum_thread][short_subject]</a>
</div>
总结:以上 3 个文件中查找的代码中把<a href=」forum.php」> 替换成<a href=」./」> 即可。方法有很多,主要还要看大家通过什么方法来实现和完成,多尝试,也许你可以找到更完美的解决方法。