【水教程第三期】如何去除论坛url中.htm的后缀(伪静态)
jzdakyj 8月前

本帖的展示的所有图片由https://img.ilysfer.com/图床提供存储支持

效果如图

第一步

修改nginx伪静态

兼容包括.htm的链接,带有.htm的链接也可以正常访问

location ~* ^/(?!admin) {
    rewrite ^/([^/]+)$ /index.php?$1.htm$2 last;
}
location ~ ^/admin {
     rewrite "^(.*)/([^/]+)$" $1/index.php?$2.htm$3 last;
}

第二步

如果不需要xn自动转换链接,可跳过这一步

下载附件中的文件,放入任意插件的hook目录中

原理:去除url()函数中的url_rewrite_on = 1的判断在url后添加.htm后缀,当然你也可以自行增加url_rewrite_on = 4的判断

以下为url函数的注释,分别为0,1,2,3

/*
	url("thread-create-1.htm");
	根据 $conf['url_rewrite_on'] 设置,返回以下四种格式:
	?thread-create-1.htm
	thread-create-1.htm
	?/thread/create/1
	/thread/create/1
*/
最后于 7月前 被jzdakyj编辑 ,原因:
上传的附件:
最新回复 (16)
全部楼主
  • liyaxun
    7月前 2
    0
    祝xiunobbs论坛越办越好!!!
  • ann
    7月前 3
    0
    不错的帖子!
  • Tillreetree 版主
    7月前 4
    0
    真正的好帖子
  • ann
    7月前 5
    0
    沙发我没有,板凳我没有,板也没有,只好站在后面排队支持! 
  • katad28762
    7月前 6
    0
    感谢楼主ing!!!
  • rainyun111111
    7月前 7
    0
    面对如此强贴,论遇到多大阻力,只要我一息上尚存,就绝不会让它沉沦下去,这一点请楼主放心。 
  • ann
    7月前 8
    0
    非常棒!!!
  • faryou
    6月前 9
    0
    阿帕奇怎么写伪静态
  • Chen2006
    6月前 10
    0
    楼主,我只是来混个熟的!老板,侬亿雷凑闹嫩了!
  • shour
    5月前 11
    0
    楼主,你写得实在是太好了。我惟一能做的,就只有把这个帖子顶上去这件事了。 
  • juse
    5月前 12
    0
    面对如此强贴,论遇到多大阻力,只要我一息上尚存,就绝不会让它沉沦下去,这一点请楼主放心。 
  • rainyun
    3月前 13
    0
    楼主,我只是来混个熟的!老板,侬亿雷凑闹嫩了!
  • wu13
    2月前 14
    0
    不错的帖子!
  • Tillreetree 版主
    2月前 15
    0
    对应的Apache .htaccess伪静态规则 RewriteEngine On # 第一个规则 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^/(?!admin)([^/]+)$ /index.php?$1.htm [L] # 第二个规则 RewriteRule ^/admin/(.*)/(.*?)/?$ /$1/index.php?$2.htm [L]
  • ccccc
    2月前 16
    0
    顶顶顶顶顶顶顶!!!
  • Avid4296
    12天前 17
    0
    哈哈,不错哦!
返回