可可文档伪静态问题
用的discuz X3.5,Nginx,宝塔为什么这样设置显示插件不存在或已关闭
上面这段是根据教程添加的,下面那段是本来就有的
请问下怎么解决?
location / {
rewrite ^([^\.]*)/$ $1/plugin.php?id=keke_doc last;
rewrite ^([^\.]*)/$ $1/plugin.php?id=keke_doc&ac=list last;
rewrite ^([^\.]*)/-(+)-(+)-(+)$ $1/plugin.php?id=keke_doc&ac=list&cate=$2-$3-$4 last;
rewrite ^([^\.]*)/-(.*?)-o-(+)-p-(+)$ $1/plugin.php?id=keke_doc&ac=list&cate=$2&o=$3&page=$4 last;
rewrite ^([^\.]*)/$ $1/plugin.php?id=keke_doc&ac=account last;
rewrite ^([^\.]*)/-(\w+)$ $1/plugin.php?id=keke_doc&ac=account&op=$2 last;
rewrite ^([^\.]*)/-(\w+)-(+)$ $1/plugin.php?id=keke_doc&ac=account&op=$2&page=$3 last;
rewrite ^([^\.]*)/-(+)$ $1/plugin.php?id=keke_doc&ac=view&did=$2 last;
rewrite ^([^\.]*)/-(+)$ $1/plugin.php?id=keke_doc&ac=user&uid=$2 last;
rewrite ^([^\.]*)/-(+)-(+)$ $1/plugin.php?id=keke_doc&ac=user&uid=$2&o=$3 last;
rewrite ^([^\.]*)/-(.*?)$ $1/plugin.php?id=keke_doc&ac=pay&priceid=$2 last;
rewrite ^([^\.]*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last;
rewrite ^([^\.]*)/article-(+)-(+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
rewrite ^([^\.]*)/forum-(\w+)-(+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
rewrite ^([^\.]*)/thread-(+)-(+)-(+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
rewrite ^([^\.]*)/group-(+)-(+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
rewrite ^([^\.]*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3 last;
rewrite ^([^\.]*)/blog-(+)-(+)\.html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
rewrite ^([^\.]*)/(fid|tid)-(+)\.html$ $1/index.php?action=$2&value=$3 last;
rewrite ^([^\.]*)/(+*)-(+)\.html$ $1/plugin.php?id=$2:$3 last;
if (!-e $request_filename) {
return 404;
}
}
建议参考可可同类型插件:
【可可】素材资源库插件伪静态在宝塔面板中设置应用的教程和使用方法
https://www.dz-x.net/t/11700/1/1.html
(出处: DZ插件网)
注意伪静态规则的上下行作用顺序,
如果还是无法领会到设置精髓,联系右侧QQ客服远程协助处理。 请问一下,这个源码使用效果好吗
huyuejun 发表于 2024-2-6 20:54
请问一下,这个源码使用效果好吗
已使用站长运营案例:https://www.dz-x.net/web.html#3 根据你提供的配置文件,有两个地方可能会导致出现插件不存在或已关闭的错误。
1. 第一个是在 `location /` 的 rewrite 规则中,你使用了一个星号(`*`),而实际上应该使用正则表达式中的点号(`.`)。所以,将 `(*)` 替换为 `(.*)`。
2. 第二个是在 rewrite 规则的最后,当请求的文件不存在时返回404。这可能会导致插件文件无法被正确访问。为了解决这个问题,你可以尝试将 `if (!-e $request_filename) { return 404; }` 这一行注释掉,然后重新测试。
修改后的配置文件如下:
location / {
rewrite ^(.*)/$ $1/plugin.php?id=keke_doc last;
rewrite ^(.*)/$ $1/plugin.php?id=keke_doc&ac=list last;
rewrite ^(.*)/-(.+)-(.+)-(.+)$ $1/plugin.php?id=keke_doc&ac=list&cate=$2-$3-$4 last;
rewrite ^(.*)/-(.+)-o-(.+)-p-(.+)$ $1/plugin.php?id=keke_doc&ac=list&cate=$2&o=$3&page=$4 last;
rewrite ^(.*)/$ $1/plugin.php?id=keke_doc&ac=account last;
rewrite ^(.*)/-(\w+)$ $1/plugin.php?id=keke_doc&ac=account&op=$2 last;
rewrite ^(.*)/-(\w+)-(.+)$ $1/plugin.php?id=keke_doc&ac=account&op=$2&page=$3 last;
rewrite ^(.*)/-(.+)$ $1/plugin.php?id=keke_doc&ac=view&did=$2 last;
rewrite ^(.*)/-(.+)$ $1/plugin.php?id=keke_doc&ac=user&uid=$2 last;
rewrite ^(.*)/-(.+)-(.+)$ $1/plugin.php?id=keke_doc&ac=user&uid=$2&o=$3 last;
rewrite ^(.*)/-(.+)$ $1/plugin.php?id=keke_doc&ac=pay&priceid=$2 last;
rewrite ^(.*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last;
rewrite ^(.*)/article-(.+)-(.+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
rewrite ^(.*)/forum-(\w+)-(.+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
rewrite ^(.*)/thread-(.+)-(.+)-(.+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
rewrite ^(.*)/group-(.+)-(.+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
rewrite ^(.*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3 last;
rewrite ^(.*)/blog-(.+)-(.+)\.html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
rewrite ^(.*)/(fid|tid)-(.+)\.html$ $1/index.php?action=$2&value=$3 last;
rewrite ^(.*)/(.+)-(.+)\.html$ $1/plugin.php?id=$2:$3 last;
}
修改后保存配置文件,并重启 Nginx 服务。然后再次测试看是否能够解决问题。
-- 来源:OpenAI ****GPT
页:
[1]