如何使用mod重写将示例1和示例2都指向示例3。到目前为止,我可以指出示例2。
示例1
http://www.example.com/posts/1/abcd/
示例2
http://www.example.com/posts/1/abcd
示例3
http://www.example.com/posts.php?aid=1
这是我的模式重写
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^posts/([^/]*)/([A-Za-z0-9-]+)$ /posts.php?aid=$1 [L]
</IfModule>
答案 0 :(得分:0)
你必须在正则表达式的末尾添加(/?)来表示可以有一个或没有/ char AND你必须删除开头^ char什么代表一行的开头:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule /posts/([^/]*)/([A-Za-z0-9-]+)(/?)$ /posts.php?aid=$1 [L]
</IfModule>