Php 创建具有多个重写规则的友好URL?

Php 创建具有多个重写规则的友好URL?,php,.htaccess,url-rewriting,Php,.htaccess,Url Rewriting,因此,php用于将/CoursedDetails/part替换为课程名称,例如/school/courses/more courses/courses type/cooking/,因此上面的脚本将所有不存在的内容重定向到index.php 我想做的是创建一个友好的URL来映射,例如,/school/courses/more courses/courses type/cooking/to/school/courses/cooking/ 是否可以通过添加额外的重写规则来实现这一点?如何: Rewri

因此,php用于将/CoursedDetails/part替换为课程名称,例如/school/courses/more courses/courses type/cooking/,因此上面的脚本将所有不存在的内容重定向到index.php

我想做的是创建一个友好的URL来映射,例如,/school/courses/more courses/courses type/cooking/to/school/courses/cooking/

是否可以通过添加额外的重写规则来实现这一点?

如何:

RewriteEngine on

RewriteBase /school/courses/more-courses/courses-type/coursedetails/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule [^/]+ index.php [QSA,L]
RewriteRule ^/school/courses/more-courses/courses-type/cooking/$ /school/courses/cooking/ [R,L]

这允许您在以
/school/courses/
开头时拥有任何URL,然后在模式
文件夹名称/
中拥有任何内容(1-5次)。现在,在您的引导程序(index.php)中,您可以获得请求URI并相应地处理操作。

考虑到可能提供/更改的课程数量(假设它不是由Gordon Ramsay建立的学校),似乎有很多工作要做
RewriteBase ^/school/courses/([a-z\-]+/){1,5}$