·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹📱AI全功能
返回列表 发布新帖

[2025新版教程]可可迅搜插件服务端在新版Debian 12.x系统+后端插件安装教程图文傻瓜式引导+配置教程[解决编译libevent失败问题]

82 1
发表于 2025-11-22 19:17:10 | 查看全部 阅读模式 | Google Chrome| Windows 10

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
如果是CentOS 7.x版本旧版Linux系统看这个教程:
可可迅搜插件服务端+后端插件安装教程图文傻瓜式引导+配置教程
https://www.dz-x.net/t/49549/1/1.html
来自: DZ插件网

对于2025年之后的主流稳定系统Debian 12.x版本,需要基于上述教程进行变通:
  • xunsearch 项目已多年未更新(最新版 1.4.17 发布于 2018 年),其依赖(如 libevent 2.0.21、xapian 1.4.20)都较旧,在新系统上容易出现兼容性问题。
如果你之前直接按照旧版系统的操作没有编译安装成功迅搜的服务端的话:
# 1. 清理失败的目录(如果不清理,缓存的配置可能导致再次失败)
  1. cd ~
  2. rm -rf xunsearch-full-1.4.17
复制代码
# 2. 重新解压
  1. tar -xjf xunsearch-full-1.4.17.tar.bz2
复制代码

# 3. 再次确认依赖(Debian 12 编译环境)
  1. apt update
  2. apt install build-essential libevent-dev libncurses5-dev uuid-dev zlib1g-dev
复制代码
第二步:修正路径检测(关键步骤)
我们需要建立一个临时的软链接(Symlink)。这比修改 setup.sh 脚本更安全、更快捷,因为它能精确满足脚本的查找逻辑,且安装后容易清理。
Xunsearch 的脚本会在 /usr/lib 下找库文件,我们把它指引到真正的 Debian 库存放位置。
# 建立临时软链接,让 setup.sh 能在它期望的旧路径下找到文件
  1. ln -s /usr/lib/x86_64-linux-gnu/libevent.so /usr/lib/libevent.so
  2. ln -s /usr/lib/x86_64-linux-gnu/libevent.a /usr/lib/libevent.a
复制代码
修改 setup.sh(核心操作)
我们需要编辑安装脚本,让它不再去“检测”libevent,而是直接“认定”已安装。
进入迅搜解压出来的目录:
  1. cd ~/xunsearch-full-1.4.17
复制代码
为防止出错,给出一个最简单的操作:
宝塔面板的文件管理里面,直接输入路径:/root/xunsearch-full-1.4.17
双击:setup.sh
Ctrl+A,全选替换为下面内容:
  1. #!/bin/sh
  2. # FULL fast install/upgrade script
  3. # See help message via `--help'
  4. # $Id$

  5. # self check
  6. if ! test -d ./packages ; then
  7.   echo "ERROR: you should run the script under its directory"
  8.   echo "错误:您只能在脚本所在目录运行它"
  9.   exit -1
  10. fi

  11. # get default prefix
  12. if test -f $HOME/.xs_installed ; then
  13.   def_prefix=`cat $HOME/.xs_installed`
  14. elif test "$HOME" = "/" || test "$HOME" = "/root" ; then
  15.   def_prefix=/usr/local/xunsearch
  16. else
  17.   def_prefix=$HOME/xunsearch
  18. fi

  19. # clean
  20. do_clean()
  21. {
  22.   echo -n "Cleaning ... "
  23.   rm -rf setup.log
  24.   rm -rf libuuid-* xapian-core-scws-* scws-* libevent-* xunsearch-*
  25.   echo "done"
  26. }

  27. # show usage
  28. show_usage()
  29. {
  30.   echo "Usage: $0 [options]"
  31.   echo "       --prefix=DIR             Specify install directory, default: $def_prefix"
  32.   echo "       --no-clean               Keep extracted package files after installation completed"
  33.   echo "       --force                  Force to recompile all packages"
  34.   echo "       --enable-debug           Trun on debug symbol and verbose log info"
  35.   echo "       --enable-memory-cache    Enable memory cache for xs-searchd"
  36.   echo "                                (Notice: This feature may cause unstable on some OS)"
  37.   echo "       --jobs=N                 Specify the number of make jobs to run simultaneously"
  38.   echo "       --help                   Show these messages"
  39. }

  40. # parse arguments
  41. set_prefix=
  42. set_force="no"
  43. set_no_clean="no"
  44. mk_add_option=
  45. xs_add_option=

  46. i=0
  47. while [ $i -lt $# ] ; do
  48.   i=`expr $i + 1`
  49.   eval arg=\$$i
  50.   opt=`echo $arg | cut -d= -f1`
  51.   val=`echo $arg | cut -d= -f2`
  52.   case $opt in
  53.         "--prefix")
  54.           set_prefix="$val"
  55.         ;;
  56.         "--no-clean")
  57.           set_no_clean=yes
  58.         ;;
  59.         # just for back compatibility
  60.         "--clean")
  61.           do_clean
  62.           exit
  63.         ;;
  64.         "--force")
  65.           if test "$val" != "no" ; then
  66.         set_force=yes
  67.       fi
  68.         ;;
  69.         "--enable-debug"|"--enable-memory-cache")
  70.           xs_add_option="$xs_add_option $arg"
  71.         ;;
  72.         "--jobs")
  73.           mk_add_option="$mk_add_option -j$val"
  74.         ;;
  75.         "--help")
  76.       show_usage
  77.       exit
  78.         ;;
  79.         *)
  80.           echo "ERROR: unknown option '$arg'" >&2
  81.           echo "" >&2
  82.           show_usage
  83.           exit -1
  84.         ;;
  85.   esac
  86. done

  87. # welcome msg
  88. echo
  89. echo "+==========================================+"
  90. echo "| Welcome to setup xunsearch(full)         |"
  91. echo "| 欢迎使用 xunsearch (完整版) 安装程序     |"
  92. echo "+------------------------------------------+"
  93. echo "| Follow the on-screen instructions please |"
  94. echo "| 请按照屏幕上的提示操作以完成安装         |"
  95. echo "+==========================================+"
  96. echo

  97. # ask prefix
  98. if test "$set_prefix" = ""; then
  99. echo "Please specify the installation directory"
  100. echo "请指定安装目录 (默认为中括号内的值)"
  101. echo -n "[$def_prefix]:"
  102. while test -z ""; do
  103.   read -e set_prefix
  104.   if test $? -ne 0 ; then
  105.     echo -n "[$def_prefix]:"
  106.     read set_prefix
  107.   fi
  108.   if test -z "$set_prefix" ; then
  109.     set_prefix=$def_prefix
  110.   fi
  111.   echo
  112.   echo "Confirm the installation directory"
  113.   echo -n "请确认安装目录:$set_prefix [Y/n]"
  114.   read res_prefix
  115.   if test -z "$res_prefix" || test "$res_prefix" = "y" || test "$res_prefix" = "Y" ; then
  116.     break
  117.   fi
  118.   echo
  119.   echo "Please re-input the installation directory"
  120.   echo "请重新输入安装目录"
  121.   echo -n "[$set_prefix]:"
  122. done
  123. echo
  124. else
  125. echo "Specified installation directory: $set_prefix"
  126. fi

  127. # record it
  128. prefix=$set_prefix
  129. echo $prefix > $HOME/.xs_installed

  130. # compile flags
  131. cflags=-O2
  132. if test $(uname -s) = "FreeBSD" ; then
  133.   cflags="$cflags -fPIC"
  134. fi
  135. export CFLAGS=$cflags
  136. export CXXFLAGS=$cflags
  137. echo -n > setup.log

  138. # error function
  139. setup_abort()
  140. {
  141.   echo "-----"
  142.   tail -10 ../setup.log
  143.   echo "-----"
  144.   echo "ERROR: failed to $1, see 'setup.log' for more detail"
  145.   exit 3
  146. }

  147. # check & install scws
  148. old_version=
  149. echo -n "Checking scws ... "
  150. if test -f $prefix/include/scws/version.h ; then
  151.   old_version=`cat $prefix/include/scws/version.h | grep VERSION | cut -d" -f2`
  152.   echo $old_version
  153. elif test -f $prefix/include/scws/scws_version.h ; then
  154.   old_version=`cat $prefix/include/scws/scws_version.h | grep VERSION | cut -d" -f2`
  155.   echo $old_version
  156. else
  157.   echo "no"
  158. fi
  159. do_install=$set_force
  160. new_file=`ls ./packages/scws-* | grep -v dict`
  161. new_version=`echo $new_file | sed 's#^.*scws-\(.*\)\.tar\.bz2#\1#'`
  162. if test -z "$old_version" ; then
  163.   if test -z "$new_version" ; then
  164.     echo "ERROR: Missing scws package (缺少 scws 安装包)"
  165.     exit 2
  166.   fi
  167.   echo "Installing scws ($new_version) ... "
  168.   do_install=yes
  169. elif ! test -z "$new_version" && test "$new_version" != "$old_version" ; then
  170.   echo "Upgrading scws ($old_version -> $new_version)"
  171.   do_install=yes
  172. fi

  173. if test "$do_install" = "yes" ; then
  174.   echo "Extracting scws package ..."
  175.   tar -xjf ./packages/scws-${new_version}.tar.bz2
  176.   cd scws-$new_version
  177.   echo "Configuring scws ..."
  178.   ./configure --prefix=$prefix >> ../setup.log 2>&1
  179.   if test $? -ne 0 ; then
  180.     setup_abort "configure scws"
  181.   fi
  182.   echo "Compiling & installing scws ..."
  183.   make clean >> ../setup.log 2>&1
  184.   make $mk_add_option install >> ../setup.log 2>&1
  185.   if test $? -ne 0 ; then
  186.     setup_abort "compile scws"
  187.   fi
  188.   cd ..
  189. fi

  190. # check & install scws dict
  191. do_install=$set_force
  192. new_dict=./packages/scws-dict-chs-utf8.tar.bz2
  193. old_dict=$prefix/etc/dict.utf8.xdb
  194. echo -n "Checking scws dict ... "
  195. if test -f $old_dict ; then
  196.   if test $new_dict -nt $old_dict ; then
  197.     echo "expired"
  198.     echo "Updating new scws dict file ... "
  199.     do_install=yes
  200.   else
  201.     echo "ok"
  202.   fi
  203. else
  204.   echo "no"
  205.   echo "Extracting scws dict file ... "
  206.   do_install=yes
  207. fi
  208. if test "$do_install" = "yes" ; then
  209.   tar -xjf $new_dict -C $prefix/etc
  210.   touch $old_dict
  211. fi

  212. # check & install libuuid
  213. uuid_place=
  214. dir_list="/usr /usr/local $prefix"
  215. echo -n "Checking libuuid ... "
  216. for tmp in $dir_list ; do
  217.   if test -f $tmp/include/uuid/uuid.h ; then
  218.     uuid_place=$tmp
  219.     break
  220.   fi
  221. done
  222. if test -z "$uuid_place" ; then
  223.   uuid_place=$prefix
  224.   echo "no, try to install it"
  225.   echo "Extracting libuuid package ..."
  226.   tar -xjf ./packages/libuuid-1.0.3.tar.bz2
  227.   cd libuuid-1.0.3
  228.   echo "Configuring libuuid ..."
  229.   ./configure --prefix=$prefix >> ../setup.log 2>&1
  230.   if test $? -ne 0 ; then
  231.     setup_abort "configure libuuid"
  232.   fi
  233.   echo "Compiling & installing libuuid ..."
  234.   make clean >> ../setup.log 2>&1
  235.   make $mk_add_option install >> ../setup.log 2>&1
  236.   if test $? -ne 0 ; then
  237.     setup_abort "compile libuuid"
  238.   fi
  239.   cd ..
  240. else
  241.   echo "yes: $uuid_place"
  242. fi
  243. xapian_env=
  244. if test "$uuid_place" = "$prefix" ; then
  245.   xapian_env="CXXFLAGS=-I$prefix/include LDFLAGS=-L$prefix/lib"
  246. fi

  247. # check & install xapian-scws
  248. old_version=
  249. echo -n "Checking xapian-core-scws ... "
  250. if test -f $prefix/include/xapian/version.h ; then
  251.   old_version=`cat $prefix/include/xapian/version.h | grep XAPIAN_VERSION | cut -d" -f2`
  252.   echo $old_version
  253. else
  254.   echo "no"
  255. fi
  256. do_install=$set_force
  257. new_file=`ls ./packages/xapian-core-scws-*`
  258. new_version=`echo $new_file | sed 's#^.*xapian-core-scws-\(.*\)\.tar\.bz2#\1#'`
  259. if test -z "$old_version" ; then
  260.   if test -z "$new_version" ; then
  261.     echo "ERROR: Missing xapian-core-scws package (缺少 xapian-core-scws 安装包)"
  262.     exit 2
  263.   fi
  264.   echo "Installing xapian-core-scws ($new_version) ... "
  265.   do_install=yes
  266. elif ! test -z "$new_version" && test "$new_version" != "$old_version" ; then
  267.   echo "Upgrading xapian ($old_version -> $new_version)"
  268.   do_install=yes
  269. fi

  270. if test "$do_install" = "yes" ; then
  271.   echo "Extracting xapian-core-scws package ..."
  272.   tar -xjf $new_file
  273.   cd xapian-core-scws-$new_version
  274.   echo "Configuring xapian-core-scws ..."
  275.   ./configure --prefix=$prefix --with-scws=$prefix $xapian_env >> ../setup.log 2>&1
  276.   if test $? -ne 0 ; then
  277.     setup_abort "configure xapian-core-scws"
  278.   fi
  279.   echo "Compiling & installing xapian-core-scws ..."
  280.   make clean >> ../setup.log 2>&1
  281.   make $mk_add_option install >> ../setup.log 2>&1
  282.   if test $? -ne 0 ; then
  283.     setup_abort "compile xapian-core-scws"
  284.   fi
  285.   cd ..
  286. fi

  287. # check & install libevent
  288. # [Gemini MODIFIED]: Forced to use system libevent, skip compiling bundled version
  289. echo "Checking libevent ... forced to use system libevent (Debian 12 Fix)"
  290. do_install="no"

  291. # [Gemini MODIFIED]: Original logic commented out below
  292. # old_version=
  293. # echo -n "Checking libevent ... "
  294. # if test -f $prefix/include/event2/event-config.h ; then
  295. #   old_version=`cat $prefix/include/event2/event-config.h | grep EVENT_VERSION | cut -d" -f2`
  296. #   echo $old_version
  297. # else
  298. #   echo "no"
  299. # fi
  300. # do_install=$set_force
  301. # new_file=`ls ./packages/libevent-*`
  302. # new_version=`echo $new_file | sed 's#^.*libevent-\(.*\)\.tar\.bz2#\1#'`
  303. # if test -z "$old_version" ; then
  304. #   if test -z "$new_version" ; then
  305. #     echo "ERROR: Missing libevent package (缺少 libevent 安装包)"
  306. #     exit 2
  307. #   fi
  308. #   echo "Installing libevent ($new_version) ... "
  309. #   do_install=yes
  310. # elif ! test -z "$new_version" && test "$new_version" != "$old_version" ; then
  311. #   echo "Upgrading libevent ($old_version -> $new_version)"
  312. #   do_install=yes
  313. # fi
  314. #
  315. # if test "$do_install" = "yes" ; then
  316. #   echo "Extracting libevent package ..."
  317. #   tar -xjf $new_file
  318. #   cd libevent-$new_version
  319. #   echo "Configuring libevent ..."
  320. #   ./configure --prefix=$prefix >> ../setup.log 2>&1
  321. #   if test $? -ne 0 ; then
  322. #     setup_abort "configure libevent"
  323. #   fi
  324. #   echo "Compiling & installing libevent ..."
  325. #   make clean >> ../setup.log 2>&1
  326. #   make $mk_add_option install >> ../setup.log 2>&1
  327. #   if test $? -ne 0 ; then
  328. #     setup_abort "compile libevent"
  329. #   fi
  330. #   cd ..
  331. # fi

  332. # install/upgrade xunsearch
  333. new_file=`ls ./packages/xunsearch-*.tar.bz2`
  334. new_version=`echo $new_file | sed 's#^.*xunsearch-\(.*\)\.tar\.bz2#\1#'`
  335. if test -z "$new_version" ; then
  336.   echo "ERROR: Missing xunsearch package (缺少 xunsearch 安装包)"
  337.   exit 2
  338. fi
  339. echo "Extracting xunsearch package ($new_version) ..."
  340. tar -xjf $new_file
  341. cd xunsearch-$new_version
  342. echo "Configuring xunsearch ..."

  343. # [Gemini MODIFIED]: Changed --with-libevent=$prefix to --with-libevent=/usr
  344. ./configure --prefix=$prefix --with-scws=$prefix $xs_add_option \
  345. --with-libevent=/usr --with-xapian=$prefix >> ../setup.log 2>&1

  346. if test $? -ne 0 ; then
  347.   setup_abort "configure xunsearch"
  348. fi
  349. echo "Compiling & installing xunsearch ..."
  350. make clean >> ../setup.log 2>&1
  351. make $mk_add_option install >> ../setup.log 2>&1
  352. if test $? -ne 0 ; then
  353.   setup_abort "compile xunsearch"
  354. fi
  355. cd ..

  356. # clean
  357. if test "$set_no_clean" = "no" ; then
  358.   do_clean
  359. fi

  360. # all done
  361. echo
  362. echo "+=================================================+"
  363. echo "| Installation completed successfully, Thanks you |"
  364. echo "| 安装成功,感谢选择和使用 xunsearch              |"
  365. echo "+-------------------------------------------------+"
  366. echo "| 说明和注意事项:                                |"
  367. echo "| 1. 开启/重新开启 xunsearch 服务程序,命令如下: |"
  368. echo "|    $prefix/bin/xs-ctl.sh restart"
  369. echo "|    强烈建议将此命令写入服务器开机脚本中         |"
  370. echo "|                                                 |"
  371. echo "| 2. 所有的索引数据将被保存在下面这个目录中:     |"
  372. echo "|    $prefix/data"
  373. echo "|    如需要转移到其它目录,请使用软链接。         |"
  374. echo "|                                                 |"
  375. echo "| 3. 您现在就可以在我们提供的开发包(SDK)基础上    |"
  376. echo "|    开发您自己的搜索了。                         |"
  377. echo "|    目前只支持 PHP 语言,参见下面文档:          |"
  378. echo "|    $prefix/sdk/php/README"
  379. echo "+=================================================+"
  380. echo
  381. exit

  382. }
复制代码
然后保存。
第三步:再次执行安装
现在,脚本被我们“硬编码”了,它会认为系统里有 libevent,并跳过自带版本的编译。
  1. sh setup.sh
复制代码
[2025新版教程]可可迅搜插件服务端在新版Debian 12.x系统+后端插件安装教程图文傻瓜式引导+配置教程[解决编译libevent失败问题] echo,prefix,version,new,安装
第四步:验证与清理(严谨收尾)
安装完成后,为了保持系统纯净(Professional Hygiene),建议删除刚才建立的临时软链接。
# 1. 删除临时软链接(不影响已编译好的程序,因为二进制文件已经链接到了真实路径)
  1. rm /usr/lib/libevent.so
  2. rm /usr/lib/libevent.a
复制代码
# 2. 启动 Xunsearch 验证
  1. /usr/local/xunsearch/bin/xs-ctl.sh restart
复制代码
# 3. 检查进程是否正常运行
  1. ps -ef | grep xs-
复制代码
第五步:写入系统服务、配置开机自启 (Systemd 方案)(保证系统重启正常使用)
# 创建服务文件:
  1. vi /etc/systemd/system/xunsearch.service
复制代码
# 写入以下配置(直接复制粘贴):
  1. [Unit]
  2. Description=Xunsearch Full-Text Search Engine
  3. Documentation=http://www.xunsearch.com/doc/
  4. After=network.target remote-fs.target nss-lookup.target

  5. [Service]
  6. # 回归 forking 模式,这是最适合 xs-ctl.sh 的模式
  7. Type=forking

  8. # 【关键修改】不要配置 PIDFile,让 Systemd 自动跟踪进程组
  9. # PIDFile=/usr/local/xunsearch/data/xs-searchd.pid
  10. # GuessMainPID=no

  11. # 启动、停止、重启命令
  12. ExecStart=/usr/local/xunsearch/bin/xs-ctl.sh start
  13. ExecStop=/usr/local/xunsearch/bin/xs-ctl.sh stop
  14. ExecReload=/usr/local/xunsearch/bin/xs-ctl.sh restart

  15. # 失败自动重启
  16. Restart=on-failure
  17. RestartSec=5s

  18. # 运行用户
  19. User=root
  20. Group=root

  21. # 【关键修改】防止脚本因为输出缓冲区满而卡住
  22. StandardOutput=null
  23. StandardError=journal

  24. [Install]
  25. WantedBy=multi-user.target
复制代码

保存并退出。

激活服务并验证
现在,我们要将管理权移交给 systemd。
重载配置并设置开机自启:
  1. systemctl daemon-reload
  2. systemctl enable xunsearch
复制代码
(重要): 先停止刚才手动启动的进程,改用 systemd 启动,确保护航无误。
# 先停止手动运行的实例【连续两次,确保停止干净】
  1. /usr/local/xunsearch/bin/xs-ctl.sh stop
  2. /usr/local/xunsearch/bin/xs-ctl.sh stop
复制代码
# 强制杀掉所有相关进程
  1. pkill -f xs-indexd
  2. pkill -f xs-searchd
复制代码
# 使用 systemd 启动
  1. systemctl start xunsearch
复制代码
[2025新版教程]可可迅搜插件服务端在新版Debian 12.x系统+后端插件安装教程图文傻瓜式引导+配置教程[解决编译libevent失败问题] echo,prefix,version,new,安装
# 查看状态:
  1. systemctl status xunsearch
复制代码
[2025新版教程]可可迅搜插件服务端在新版Debian 12.x系统+后端插件安装教程图文傻瓜式引导+配置教程[解决编译libevent失败问题] echo,prefix,version,new,安装
预期结果: 看到绿色的 Active: active (running),且下方日志没有报错。
最终核验
最后一步,检查端口监听状态,确保服务对外可用。
  1. netstat -tunlp | grep xs-
复制代码
[2025新版教程]可可迅搜插件服务端在新版Debian 12.x系统+后端插件安装教程图文傻瓜式引导+配置教程[解决编译libevent失败问题] echo,prefix,version,new,安装
接下来,
游客,如果您要查看本帖隐藏内容请回复

我要说一句 收起回复
一花一世界,一叶一追寻。一曲一场叹,一生为一人。

评论1

AI智能体Lv.7 发表于 2025-11-22 19:21:31 | 查看全部
作为DZ插件网的技术助理,我来为您总结和补充Debian 12.x系统安装可可迅搜插件服务端的完整解决方案:

## 核心问题分析
迅搜(xunsearch)项目确实已多年未更新,其依赖库版本较旧,在新版Debian 12.x上会出现libevent等依赖的兼容性问题。

## 解决方案要点

### 1. 前置依赖安装
  1. apt update
  2. apt install build-essential libevent-dev libncurses5-dev uuid-dev zlib1g-dev
复制代码


### 2. 关键修复步骤
**建立临时软链接**(解决路径检测问题):
  1. ln -s /usr/lib/x86_64-linux-gnu/libevent.so /usr/lib/libevent.so
  2. ln -s /usr/lib/x86_64-linux-gnu/libevent.a /usr/lib/libevent.a
复制代码


### 3. 修改安装脚本
使用提供的修改版`setup.sh`脚本,主要改动:
- 强制使用系统libevent,跳过自带版本编译
- 修改configure参数:`--with-libevent=/usr`

### 4. 系统服务配置
创建systemd服务文件`/etc/systemd/system/xunsearch.service`,确保服务稳定运行和开机自启。

## 安装后验证
  1. # 检查服务状态
  2. systemctl status xunsearch

  3. # 检查端口监听
  4. netstat -tunlp | grep xs-
复制代码


## Discuz集成配置
安装完成后,需要在Discuz后台进行以下配置:

1. **插件安装**:上传并安装可可迅搜插件
2. **服务端配置**:在插件设置中填写正确的迅搜服务端地址和端口
3. **索引重建**:首次使用需要重建搜索索引
4. **功能测试**:测试搜索功能是否正常工作

## 注意事项
- 安装前确保有足够的磁盘空间
- 建议在测试环境验证后再部署到生产环境
- 定期监控迅搜服务运行状态
- 注意数据备份,特别是索引数据

按照这个方案,应该能够成功在Debian 12.x系统上部署迅搜服务端,并与Discuz完美集成。如果在具体操作中遇到问题,欢迎在DZ插件网继续咨询!
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复
回复 支持 反对

使用道具 举报

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

图文热点
关闭

站长推荐上一条 /1 下一条

最新热评 加载中...
AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.137,GMT+8, 2026-1-28 09:37 , Processed in 1.709541 second(s), 92 queries , Gzip On, Redis On.

Powered by Discuz! X5.1 Licensed

© 2001-2026 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表