当前位置:首页 > 技术教程

xiaocms伪静态规则

aben1周前 (10-26)技术教程67

XiaoCms企业建站版基于PHP+Mysql架构 是一款小巧、灵活、简单、易用的轻量级cms。能满足各种企业站 博客 等中小型站点。我之前有不少网站是用它建的。但最近发现了官方伪静态的一个问题,当栏目出现空格或减号的时候,伪静态失效了,打开栏目url出现404。经改进后的伪静态如下:

Apache

# 将 RewriteEngine 模式打开
RewriteEngine On
# 如果是在目录,请启用下面的规则、修改以下语句中的 /xiaocms 为您的网站目录地址
#RewriteBase /xiaocms
# Rewrite 系统规则请勿修改
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\s|%200-9a-z-_]+)/$ index.php?catdir=$1 [L,NC,NE,QSA]
RewriteRule ^([\s|%200-9a-z-_]+)/list_([0-9]+)\.html$ index.php?catdir=$1&page=$2 [L,NC,NE,QSA]
RewriteRule ^([\s|%200-9a-z-_]+)/([0-9]+)\.html$ index.php?id=$2&x=$1 [L,NC,NE,QSA]
RewriteRule ^([\s|%200-9a-z-_]+)/([0-9]+)_([0-9]+)\.html$ index.php?id=$2&page=$3&x=$1 [L,NC,NE,QSA]

Nginx

location / {
  if (!-e $request_filename){
    rewrite ^/([\s|%200-9a-z-A-Z-_]+)/$ /index.php?catdir=$1 last;
  }
  rewrite ^/([\s|%200-9a-z-A-Z-_]+)/list_([0-9]+)\.html$ /index.php?catdir=$1&page=$2 last;
  rewrite ^/([\s|%200-9a-z-A-Z-_]+)/([0-9]+)\.html$ /index.php?id=$2&x=$1 last;
  rewrite ^/([\s|%200-9a-z-A-Z-_]+)/([0-9]+)_([0-9]+)\.html$ /index.php?id=$2&page=$3&x=$1 last;
}

后记:基于目前php2shell漏洞,Xiaocms所支持的php版本已经不安全了。弃用了。除非作者更新到支持更安全的php8.2+

相关文章

一些常用的sql操作语句

一些常用的sql操作语句

一个客户的网站,文章有几万条,每篇文章里都有一个固定电话号码,可是最近他取消了固话,想改成手机号。几万条数据一条一条地改是不可能的。只能在数据库里批量替换。这里需要用到sql的字符串替换。update…

一些常用的linux命令

一些常用的linux命令

Linux服务器之间互相传输文件的命令:scp。例如主机a中存在一个大文件/opt/test/abc.zip,传到主机b中的:/opt/test/目录下,可登录到主机a下,使用scp命令如下:scp/…

腾讯地图和百度地图把地址转换成经纬度坐标并传递给url

腾讯地图和百度地图把地址转换成经纬度坐标并传递给url

腾讯地图坐标转换方法<!--引入qq地图的api,要填上key--><scriptcharset="utf-8"src="https://map.qq.…

用DD脚本给服务器重装纯净Linux系统

用DD脚本给服务器重装纯净Linux系统

在每次使用VPS之前,我都会习惯性地执行一次DD命令。这样做的好处:一方面可以将系统更换为我熟悉的Debian;另一方面可以移除VPS供应商系统内置的“使用情况监控”,顺便修改SSH连接端口。下载前记…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。