分享个有用的小知识,妈妈再也不用担心我不会写伪静态了
URL重写规则
假设网站域名为 www.3qpd.com 我想要实现的效果是访问 www.3qpd.com/artcle/125487899 即可打开文章页面。
实际上 www.3qpd.com/artcle/index.php?id=12548789 才是真实的访问路径我们通过URL重写规则去将链接重写为 www.3qpd.com/artcle/12548789。
具体规则写法如下
RewriteEngine on
RewriteRule ^artcle/([0-9]*)$ artcle/index.php?id=$1
^指的是从这里开始,artcle指的是从这里开始的一个目录,如果是根目录,那么直接就是一个斜杠即可,([0-9]*)$ 是一个正则匹配规则,这里匹配的是只能传入数字。artcle/index.php?id=$1 很明显看出是原来的真实路径,其中$1指的是匹配第一个参数。
知道URL重写规则的意思就好办了,下面就是一些常见的URL重写规则。
1、www.3qpd.com/artcle/s.php?id=12345 重写为 www.3qpd.com/artcle/12345.html
RewriteEngine on
RewriteRule ^artcle/([0-9]*).html$ artcle/s.php?id=$1
2、www.3qpd.com/artcle/s.php?id=12345 重写为 www.3qpd.com/artcle/12345-1-1.html
RewriteEngine on
RewriteRule ^artcle/([0-9]*)-1-1.html$ artcle/s.php?id=$1
3、www.3qpd.com/artcle/s.php?id=abcdefg 重写为 www.3qpd.com/artcle/abcdefg
RewriteEngine on
RewriteRule ^artcle/(w+)$ artcle/s.php?id=$1