1

我需要访问的所有地址都被重定向到模板文件中的目录(或包含)。例如:

/sports/basketball/ ==> /template_sport.php?idsport=$1
/sports/soccer/ ==> /template_sport.php?idsport=$1
/sports/tennis/ ==> /template_sport.php?idsport=$1

但是,如果我们访问 /sports/(没有子目录)来加载该目录中的页面。

我已经完成了这个 ... 子目录并且运行良好,但是当我访问 /sports/ 时,我也尝试访问 /plantilla_deporte.php ....

RewriteCond %{REQUEST_URI} sports/(.*)
RewriteRule (.*) /template_sport.php?idsport=$1

如果您直接到 /sports/ 找不到模板,我该如何添加例外?

提前致谢!

4

1 回答 1

2

你可以试试这个:

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/sports/([^/]+)
RewriteRule .* http://example.com/sports/template_sport.php?idsport=%1 [L]

它将静默映射所有像这样的 URL:

http://example.com/sports/basketball

到:

http://example.com/sports/template_sport.php?idsport=basketball

当传入的 URL 只是:

http://example.com/sports/

于 2013-01-01T12:58:14.060 回答