镖师 发表于 2022-2-21 11:24:31

关于手机版伪静态问题!

在网上找到手机版伪静态教程如下:
1、在移动版中,找到source\class\helper\helper_mobile.php中的函数 mobilereplace,修改成如下所示:

public static function mobilereplace($file, $replace) {
if(strpos($replace, 'mobile=') === false) {
if(strpos($replace, '?') === false) {
$replace = 'href="'.$file.$replace.'?mobile='.IN_MOBILE.'"';
} else {
$replace = 'href="'.$file.$replace.'&mobile='.IN_MOBILE.'"';
//$replace=str_replace('&mobile=2','',$replace);
$replace=mbrewriteoutput($replace);
}
return $replace;
} else {
return 'href="'.$file.$replace.'"';
}
}


2、然后在source/function/function_core.php中增加函数


function mbrewriteoutput($eurl) {
                if(strstr($eurl,"forum.php?mod=forumdisplay&fid=")){
                $eurl=str_replace('&mobile=2','',$eurl);
                        $fidarr=explode("fid=",$eurl);
                        $fid=$fidarr;
                        $fid=str_replace('"','',$fid);
                        $eurl=str_replace('forum.php?mod=forumdisplay&fid='.$fid,'forum-'.$fid.'-1.html',$eurl);
                        $eurl=str_replace('forum.php?mod=forumdisplay&fid='.$fid,'forum-'.$fid.'-1.html',$eurl);
                        return $eurl;
                }elseif(strstr($eurl,"forum.php?mod=viewthread&tid=")){
                        $eurl=str_replace('&extra=page%3D1&mobile=2','',$eurl);
                        $tidarr=explode("tid=",$eurl);
                        $tid=$tidarr;
                        $tid=str_replace('"','',$tid);
                        $eurl=str_replace('forum.php?mod=viewthread&tid='.$tid,'thread-'.$tid.'-1-1.html',$eurl);
                        $eurl=str_replace('forum.php?mod=viewthread&tid='.$tid,'thread-'.$tid.'-1-1.html',$eurl);
                        return $eurl;
                }elseif(strstr($eurl,"forum.php?forumlist=1&mobile=2")){
                        $eurl=str_replace('forum.php?forumlist=1&mobile=2','https://网站.com/',$eurl);
                        return $eurl;
                }
                return $eurl;
}
这样就可以实现手机伪静态



教程来源:365建站网

Crystαl 发表于 2022-2-21 11:25:15

在默认规则情况下,手机版伪静态正常

婷姐 发表于 2022-2-21 11:25:48

修改规则的话就出现网址变长的问题

function mbrewriteoutput($eurl) {
                if(strstr($eurl,"forum.php?mod=forumdisplay&fid=")){
                $eurl=str_replace('&mobile=2','',$eurl);
                        $fidarr=explode("fid=",$eurl);
                        $fid=$fidarr;
                        $fid=str_replace('"','',$fid);
                        $eurl=str_replace('forum.php?mod=forumdisplay&fid='.$fid,'korea/'.$fid.'/1.html',$eurl);
                        $eurl=str_replace('forum.php?mod=forumdisplay&fid='.$fid,'korea/'.$fid.'/1.html',$eurl);
                        return $eurl;
                }elseif(strstr($eurl,"forum.php?mod=viewthread&tid=")){
                        $eurl=str_replace('&extra=page%3D1&mobile=2','',$eurl);
                        $tidarr=explode("tid=",$eurl);
                        $tid=$tidarr;
                        $tid=str_replace('"','',$tid);
                        $eurl=str_replace('forum.php?mod=viewthread&tid='.$tid,'hanguo/'.$tid.'/1/1.html',$eurl);
                        $eurl=str_replace('forum.php?mod=viewthread&tid='.$tid,hanguo/'.$tid.'/1/1.html',$eurl);
                        return $eurl;
                }elseif(strstr($eurl,"forum.php?forumlist=1&mobile=2")){
                        $eurl=str_replace('forum.php?forumlist=1&mobile=2','https://网站.com/',$eurl);
                        return $eurl;
                }
                return $eurl;
}



手机版为静态的网址变长,变成这样:
http://www.网址.com/korea/11334&fromguid=hot&extra=&mobile=2/1/1.html
http://www.网址.com/korea/11326&fromguid=hot&extra=&mobile=2/1/1.html
http://www.网址.com/hanguo/139&/1.html

请问是哪里的问题?
谢谢了!

Crystαl 发表于 2022-2-21 11:26:37

请问管理员,这个帖子能删除吗?连接:https://www.dismall.com/thread-11631-1-1.html
都是同样的问题,但那个问题问的太乱,我自己都要看不明白了。

所以,重新整了发了一贴!
谢谢了!
页: [1]
查看完整版本: 关于手机版伪静态问题!

创宇盾启航版免费网站防御网站加速服务