htaccess 多参数重写规则

htaccess multiple parameters rewrite rule(htaccess 多参数重写规则)
本文介绍了htaccess 多参数重写规则的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我知道这个问题已经问过了,但找不到适合我的问题的任何内容.

I know this problem is over asked, but couldnt find anything fitting with my problem.

我目前正在创建一个网站,我的网址如下:

I'm currently creating a website, and my url are like :

www.foo.com/或 www.foo.com/index.php.它们可以采用 1、2 或三个不同的参数,例如

www.foo.com/ or www.foo.com/index.php. They can take 1, 2 ,or three different parameters like

www.foo.com/index.php?page=Home&lang=en&article=1

www.foo.com/index.php?page=Home&lang=en&article=1

我想要的是像

   www.foo.com/Home/

or www.foo.com/en/Home

or www.foo.com/Article/1

or www.foo.com/en/Article/1

page参数是必填的,其他两个都不是..我不能为我工作...任何帮助将不胜感激

The page parameter is required, other two are not.. I cant have anything working for me... Any help would be greately appreciated

非常感谢!

推荐答案

最好有单独的清洁规则.将此代码放入您的 DOCUMENT_ROOT/.htaccess 文件中:

Better to have separate clean rules. Put this code in your DOCUMENT_ROOT/.htaccess file:

RewriteEngine On

RewriteRule ^index.php$ - [L]

RewriteRule ^([^/]+)/?$ /index.php?page=$1 [L,QSA]

RewriteRule ^([a-z]{2})/([^/]+)/?$ /index.php?page=$2&lang=$1 [L,QSA]

RewriteRule ^([a-z]{2})/([^/]+)/([0-9]+)/?$ /index.php?page=$2&lang=$1&article=$3 [L,QSA]

RewriteRule ^([^/]+)/([0-9]+)/?$ /index.php?page=$1&article=$2 [L,QSA]

这篇关于htaccess 多参数重写规则的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Codeigniter htaccess to remove index.php and www(Codeigniter htaccess 删除 index.php 和 www)
htaccess mod_rewrite part of url to GET variable(htaccess mod_rewrite url 的一部分到 GET 变量)
Replacing a querystring parameter value using mod_rewrite(使用 mod_rewrite 替换查询字符串参数值)
.htaccess in subdirectory #39;overriding#39; parent htaccess(子目录“覆盖父 htaccess 中的 .htaccess)
How to rewrite SEO friendly url#39;s like stackoverflow(如何像stackoverflow一样重写SEO友好的url)
Is it okay to have a very long .htaccess file?(有一个很长的 .htaccess 文件可以吗?)