改写友好的URL,不同的模式



我有以下重写规则

<filesMatch  "^(member)$">
    Options +FollowSymlinks
    RewriteEngine on
    RewriteRule ^/(.*)/(.*)/(.*)$  /member-profile.php?ID=$2 [L]
</filesMatch>
<filesMatch  "^(community-events)$">
    Options +FollowSymlinks
    RewriteEngine on
    RewriteRule ^/(.*)/(.*)/(.*)/(.*)$  /community-events.php?ID=$3 [L]
</filesMatch>

显然是重写这个

mydomain.com/comunity-events/category/id/name 

mydomain.com/comunity-events.php?myvariables

现在,我想要一个新的重定向,它没有开始的文件夹,像这样

mydomain.com/business-category/business-name

mydomain.com/business-profile.php?variables

在给定当前配置的情况下,不为每个类别名称重定向是可能的吗?

您甚至不需要filesMatch指令,因为您可以在RewriteRule中匹配起始部分。

你可以用这些规则替换你的。htaccess:

Options +FollowSymlinks -MultiViews
RewriteEngine On
# handle /member/...
RewriteRule ^/?(member)/(.*)/(.*)$ /member-profile.php?ID=$2 [L,QSA,NC]
# handle /community-events/...
RewriteRule ^/?(community-events)/(.*)/(.*)/(.*)$ /community-events.php?ID=$3 [L,QSA,NC]
# handle /business-category/business-name
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?(.*)/(.*)$ business-profile.php?name=$2 [L,QSA]

相关内容

  • 没有找到相关文章

最新更新