我想通过mod_rewrite缩短我的URL。
我的网站上有两种类型的URL:一次带参数和不带参数。
- example.com/devel/pages/event.php?event=MYEVENTNAME
- example.com/devel/pages/image.php?event=MYEVENTNAME
- example.com/devel/pages/location.php?name=MYLOCATION
- example.com/devel/pages/home.php
- example.com/devel/pages/news.php
我想称这些网站为:
- example.com/devel/events/MYEVENTNAME
- example.com/devel/images/MYEVENTNAME
- example.com/devel/locations/MYLOCATION
- example.com/devel/home
- example.com/devel/news
这就是我现在写的...
例如
RewriteRule devel/images/(.*)?$ devel/pages/images.php?event=$1
怎么可能以正确的方式做到这一点?
您可以在站点根目录 .htaccess 中使用以下 2 个通用规则:
RewriteEngine On
RewriteRule ^devel/([w-]+)/([w-]+)/?$ devel/pages/$1.php?event=$2 [L,QSA,NC]
RewriteRule ^devel/([w-]+)/?$ devel/pages/$1.php [L,NC]