.htaccess 使用新URL迁移系统

.htaccess 使用新URL迁移系统,.htaccess,mod-rewrite,lamp,.htaccess,Mod Rewrite,Lamp,我正在将系统从MVC切换到自定义代码系统。目前,我们对URL使用此格式: index.php?part=CAPACITOR&type=CERAMIC&model=0805&page=spec 我现在需要重写的网址喜欢更美好的用户喜欢 mysitecom/CAPACITOR/ mysitecom/CAPACITOR/CERAMIC/ mysitecom/CAPACITOR/CERAMIC/0805/spec.html#2 其中#1和#2是jquery中加载的页面。开发人

我正在将系统从MVC切换到自定义代码系统。目前,我们对URL使用此格式:

index.php?part=CAPACITOR&type=CERAMIC&model=0805&page=spec
我现在需要重写的网址喜欢更美好的用户喜欢

mysitecom/CAPACITOR/
mysitecom/CAPACITOR/CERAMIC/
mysitecom/CAPACITOR/CERAMIC/0805/spec.html#2
其中#1和#2是jquery中加载的页面。开发人员使用旧方法使用/index.php/capactor/certial/0805/spec.html


因为我不认为在url中使用index.php是好的,我能做些什么来改进它呢?

以下是您需要使用的内容

RewriteEngine On
RewriteBase /

RewriteRule ^([a-z0-9\-_]+)/?$ index.php?part=$1&type=all&model=all&page=index [L,NC]
RewriteRule ^([a-z0-9\-_]+)/([a-z0-9\-_]+)/?$ index.php?part=$1&type=$2&model=all&page=index [L,NC]
RewriteRule ^([a-z0-9\-_]+)/([a-z0-9\-_]+)/([a-z0-9\-_]+)/?$ index.php?part=$1&type=$2&model=$3&page=index [L,NC]
RewriteRule ^([a-z0-9\-_]+)/([a-z0-9\-_]+)/([a-z0-9\-_]+)/([a-z0-9\-_\.]+)\.html$ index.php?part=$1&type=$2&model=$3&page=$4 [L,NC]
所以,当一个文件夹(例如陶瓷)未提供时,您可以添加一个标志来加载所有,这与模型的想法相同。这意味着,如果只提供第一部分,则只使用第一条规则。默认情况下,从
page.html
开始,您可以加载索引

现在,
a-z0-9 \-
仅指任何字母、数字、破折号和下划线。如果愿意,可以使用
([^/]+)
,这样可以使用更多字符


L的意思是
last
,意思是如果规则匹配,它将停止。NC表示非案例,所以A=A或ABC=ABC。

您使用的是apache?mod rewrite是否启用?是的,我想是的,我如何检查?阅读此内容,让我们知道: